当活动不自动旋转时,如何检查手机状态是横向还是纵向?

2024-01-02

活动不自动旋转:

       <activity
            android:name=".E028"
            android:label="@string/app_name"
            android:screenOrientation="portrait"
            android:theme="@android:style/Theme.Black.NoTitleBar" >
        </activity>

如果我使用 onConfigurationChanged ,它不起作用:

@Override
    public void onConfigurationChanged(Configuration newConfig) {
        // TODO Auto-generated method stub
        super.onConfigurationChanged(newConfig);
        if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
            Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
        } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) {
            Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
        }
    }

当活动不自动旋转时,如何检查手机状态是横向还是纵向?

我认为这种情况:我必须使用传感器

My code:

@Override
    public void onSensorChanged(SensorEvent event) {
        // TODO Auto-generated method stub
        if (event.values[1] < 6.5 && event.values[1] > -6.5) {
            if (orientation != 1) {
                Log.d("Sensor", "Landscape");
                // listImage.notifyDataSetChanged();
            }
            orientation = 1;
        } else {
            if (orientation != 0) {
                Log.d("Sensor", "Portrait");
                // listImage.notifyDataSetChanged();
            }
            orientation = 0;
        }
    }

但它工作得不是最好,我的手机状态是纵​​向:如果向后倾斜一点,返回值是横向。


尝试这个..

getResources().getConfiguration()将返回Configuration http://developer.android.com/reference/android/content/res/Configuration.html

if(YourActivity.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) 
{
    // Portrait Mode
} else {
    // Landscape Mode         
}

EDIT

锁定到一个方向时获取手机方向 https://stackoverflow.com/questions/14836003/get-phone-orientation-when-locked-into-one-orientation

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当活动不自动旋转时,如何检查手机状态是横向还是纵向? 的相关文章

  • 将 Cordova Android 项目迁移到 AndroidX

    我目前正在使用 AdMob 测试广告测试混合 Cordova Android 应用程序 该应用程序使用一个自定义插件 即内部插件 我可以通过该插件访问 Google Play Services AdMob API 的相关位plugin xm
  • 设置自定义属性android的值

    我有一个自定义属性 如下所示
  • Android 通知栏和标题栏的大小?

    android 有没有办法获取通知栏和标题栏的大小 目前我通过以下方式获取显示宽度和高度 Display display getWindowManager getDefaultDisplay int width display getWid
  • 以编程方式切换片段

    我有一个带有两个片段的寻呼机 每个片段都有自己的 xml 我的问题是是否可以以编程方式从一个片段切换到另一个片段并触发任何侦听器 此致 我假设你的意思是浏览器 http developer android com reference and
  • setRotation(90) 以肖像模式拍照不适用于三星设备

    根据文档 设置旋转 90 http developer android com reference android hardware Camera Parameters html setRotation 28int 29应旋转捕获的 JPE
  • 如何获取拍摄照片的uri?

    我想实现什么目标 我想获取捕获图像的 URI 并将其保存在 Firebase 上 我尝试了什么 首先我需要打开相机 下面我是如何做到的 Intent cameraIntent new Intent android provider Medi
  • Android:View类中getTag()和setTag()的用途

    public void setTag final Object tag mTag tag public Object getTag return mTag 这是 Android 中 View 类的两个方法 以下分别是这两种方法的官方文档 R
  • 如何使用意图将哈希图值发送到另一个活动

    如何发送HashMap从一个意图到第二个意图的价值 另外 如何检索HashMap第二个活动的价值 Java 的 HashMap 类扩展了Serializable接口 这使得可以轻松地将其添加到意图中 使用Intent putExtra St
  • 想知道如何在 ANDROID 可扩展列表中获取所选项目

    我有一个可扩展列表 其中包含组 大陆和子组 国家 单击一个国家 地区时 我希望该国家 地区显示在另一类的文本视图中 package com zeus eca import android app ExpandableListActivity
  • 如何在Android中正确使用AsyncTask [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我不想传递任何参数doInBackgroundAsyncTask 的方法 那么代码应该是什么样的呢 import android ap
  • 在使用单独方向布局旋转设备的同时继续播放 YouTube 播放器

    我正在尝试将包含 YouTube 播放器的视图添加到当我旋转设备时继续播放的活动 由于 UI 不仅仅包含视频 因此我使用YouTubePlayerFragment 当方向从纵向变为横向时 系统应使用不同的布局文件 此布局还包括 YouTub
  • 如何在Android中设置音频均衡器

    我正在制作一个媒体播放器 其中需要使用 搜索栏 将均衡器效果设置为 低音 可怕 摇滚 流行 中 我得到了一个链接 其中使用了一些 NDK 库来执行此操作 是否有任何 Java 库可以执行此操作 请解释执行此操作的逻辑是什么 Override
  • 删除 ios 和 android 的 PhoneGap 中的闪屏

    我正在尝试在 ios 和 android 的phonegap应用程序中完全删除启动屏幕 这navigator hide 函数仅在加载 html 页面后才起作用 但我需要在此之前删除启动屏幕 请告诉我是否有任何选项可以执行此操作 Cordov
  • 如何处理错误消息“FontFamily bestFont == NULL,因此返回空的 FakedFont”

    我从另一个程序员那里接手了一个项目 我注意到每次加载一些 UI 片段 列表视图重新加载等 时 日志都会充斥着数十个 D Minikin FontFamily bestFont NULL so return vacant FakedFont
  • 恢复 webview 滚动位置?

    我想要拯救国家 of my webView以其页面滚动位置当用户离开应用程序时并在用户再次打开应用程序时恢复它们 这样 用户可以继续阅读恢复的网页视图内容 向下滚动到恢复的位置 以下是我正在使用的方法 Override protected
  • Gradle 从服务器收到状态代码 403:禁止

    由于这个错误 我无法构建我的 android 项目 Gradle 无法获取https www jitpack io com github Raizlabs DBFlow dbflow 3 1 1 dbflow 3 1 1 pom https
  • Android:从http获取文件并存储在SDCard中

    我已经遵循了许多类似问题中所写的内容 但仍然存在问题 从jsp我得到一个pdf 如果我转到URL 浏览器会自动打开pdf jsp页面会执行类似以下操作 Gets the pdf from the database BufferedInput
  • Eclipse Android 插件中出现“调试证书已过期”错误

    我正在使用 Eclipse Android 插件来构建一个项目 但是我 在控制台窗口中出现此错误 2010 02 03 10 31 14 androidVNC Error generating final archive Debug cer
  • 请求位置更新参数 android

    我对这个参数感到困惑 locationManager requestLocationUpdates provider 60000 10 listener 这是它的执行方式location update listener if time 60
  • Android:永久保存文件(即使在清除数据/卸载后)

    我想知道是否有一种方法可以永久存储少量数据 永久我的意思是即使用户清除应用程序数据 卸载应用程序 我也希望数据保留下来 我知道当用户清除应用程序数据 卸载应用程序时 共享首选项和数据库将被删除 我也知道我可以在 SD 卡上保存内容 但是如果

随机推荐