标签: orientation

检查Android手机的方向

如何检查Android手机是横向还是纵向?

java android orientation

396
推荐指数
14
解决办法
25万
查看次数

强制"纵向"方向模式

我正在尝试为我的应用程序强制"纵向"模式,因为我的应用程序绝对不是为"横向"模式设计的.

在阅读了一些论坛后,我在清单文件中添加了这些行:

<application 
  android:debuggable="true"
  android:icon="@drawable/icon" 
  android:label="@string/app_name"
  android:screenOrientation="portrait">
Run Code Online (Sandbox Code Playgroud)

但它不适用于我的设备(HTC Desire).它从"纵向"lo"横向"切换,忽略清单文件中的行.

在更多论坛阅读之后,我尝试在我的清单文件中添加它:

<application 
  android:debuggable="true"
  android:icon="@drawable/icon" 
  android:label="@string/app_name"
  android:configChanges="orientation"       
  android:screenOrientation="portrait">
Run Code Online (Sandbox Code Playgroud)

这个函数在我的activity类中:

public void onConfigurationChanged(Configuration newConfig)
{
    super.onConfigurationChanged(newConfig);
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
Run Code Online (Sandbox Code Playgroud)

但同样,没有运气.

android landscape portrait screen orientation

285
推荐指数
5
解决办法
22万
查看次数

后台任务,进度对话框,方向更改 - 是否有100%可行的解决方案?

我在后台线程(我使用AsyncTask)下载了一些来自互联网的数据,并在下载时显示进度对话框.方向更改,Activity重新启动,然后我的AsyncTask完成 - 我想关闭progess对话框并启动一个新的Activity.但是调用dismissDialog有时会抛出一个异常(可能是因为Activity被销毁而且还没有启动新的Activity).

处理此类问题的最佳方法是什么(从后台线程更新UI即使用户更改方向也能正常工作)?谷歌有人提供了一些"官方解决方案"吗?

android orientation android-orientation

233
推荐指数
4
解决办法
6万
查看次数

[UIScreen mainScreen] .bounds.size在iOS8中是否依赖于方向?

我在iOS 7和iOS 8中运行了以下代码:

UIInterfaceOrientation orientation = [[UIApplication sharedApplication] statusBarOrientation];
BOOL landscape = (orientation == UIInterfaceOrientationLandscapeLeft || orientation == UIInterfaceOrientationLandscapeRight);
NSLog(@"Currently landscape: %@, width: %.2f, height: %.2f", 
      (landscape ? @"Yes" : @"No"), 
      [[UIScreen mainScreen] bounds].size.width, 
      [[UIScreen mainScreen] bounds].size.height);
Run Code Online (Sandbox Code Playgroud)

以下是iOS 8的结果:

Currently landscape: No, width: 320.00, height: 568.00
Currently landscape: Yes, width: 568.00, height: 320.00
Run Code Online (Sandbox Code Playgroud)

与iOS 7中的结果相比:

Currently landscape: No, width: 320.00, height: 568.00
Currently landscape: Yes, width: 320.00, height: 568.00
Run Code Online (Sandbox Code Playgroud)

是否有任何文件指定此更改?或者它是iOS 8 API中的临时错误?

orientation uiinterfaceorientation ios uiscreen ios8

184
推荐指数
8
解决办法
8万
查看次数

如何获取当前的屏幕方向?

我只想在我的方向处于横向时设置一些标志,这样当在onCreate()中重新创建活动时,我可以在纵向和横向加载的内容之间切换.我已经有了一个处理我的布局的layout-land xml.

public void onConfigurationChanged(Configuration _newConfig) {

        if (_newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
            this.loadURLData = false;
        }

        if (_newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) {
            this.loadURLData = true;
        }

        super.onConfigurationChanged(_newConfig);
    }
Run Code Online (Sandbox Code Playgroud)

覆盖onConfigurationChanged将阻止我的layout-land xml以横向方向加载.

我只想在onCreate()中获取设备的当前方向.我怎么能得到这个?

java configuration android orientation

183
推荐指数
6
解决办法
13万
查看次数

如何在iPhone Web应用程序中将方向锁定为纵向模式?

我正在构建一个iPhone Web应用程序,并希望将方向锁定为纵向模式.这可能吗?是否有任何网络工具包扩展来执行此操作?

请注意,这是一个用HTML和JavaScript编写的Mobile Safari应用程序,它不是用Objective-C编写的本机应用程序.

iphone orientation

155
推荐指数
6
解决办法
25万
查看次数

锁定屏幕方向(Android)

可能重复:
如何在Android中禁用方向更改?

我正在编写一个使用不同内容(活动)的标签的Android应用程序.在其中一个活动中,我想将屏幕方向锁定为"Landscape"模式,但在其他活动中,我想要正常方向(根据传感器).

我现在正在做的是我正在打电话

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
Run Code Online (Sandbox Code Playgroud)

当我切换到横向模式活动时,和

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
Run Code Online (Sandbox Code Playgroud)

当我切换回其他活动时.但是,这似乎不起作用,整个应用程序锁定.这个问题的正常方法是什么?

layout android orientation

146
推荐指数
3
解决办法
29万
查看次数

Android WebView:处理方向更改

问题是旋转后的性能.WebView必须重新加载页面,这可能有点单调乏味.

每次处理方向更改而不从源重新加载页面的最佳方法是什么?

android orientation webview

145
推荐指数
5
解决办法
9万
查看次数

如何为纵向和横向方向指定不同的布局?

我已经看到了能够为一个活动指定两个单独的布局xml文件的引用,一个用于Portrait,一个用于Landscape.我没有找到任何有关如何做到这一点的信息.如何为每个活动指定哪个xml文件是纵向布局,哪个是横向布局?

是否也可以为不同的屏幕尺寸指定不同的布局?如果是这样,这是怎么做到的?

android landscape portrait orientation

136
推荐指数
6
解决办法
16万
查看次数

Android - 相机预览是侧面的

我正在使用预览来显示相机在屏幕上看到的内容.

我可以使一切工作正常,表面创建,表面设置和表面显示.

但是,在纵向模式下,它始终以不正确的90度角显示图像.

如图中所示:

替代文字

我知道使用以下代码将直接设置图片:

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
Run Code Online (Sandbox Code Playgroud)

但是我在Activity中有预览,其中包含其他元素,并且我的Activity在横向模式下显示没有意义.(默认禁用)

所以我想知道是否只是改变预览的方向?并在"纵向"模式下正确显示我的其余活动?

或者无论如何旋转预览以便正确显示?

camera android portrait preview orientation

123
推荐指数
3
解决办法
9万
查看次数