相关疑难解决方法(0)

在Android中禁用横向模式?

如何在我的Android应用中禁用某些视图的横向模式?

android android-manifest android-orientation

910
推荐指数
18
解决办法
56万
查看次数

检查Android手机的方向

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

java android orientation

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

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

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

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

android orientation android-orientation

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

如何在运行时锁定方向

有没有办法在运行时锁定方向?例如,如果用户当前处于横向状态并切换菜单选项,我想允许用户将屏幕锁定为横向.

android orientation

106
推荐指数
6
解决办法
7万
查看次数

如何将布局方向修复为垂直?

如何将布局方向修改为纵向,并且在运行时不允许从纵向更改为横向?

android android-orientation

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

屏幕方向锁定

是否有可靠的方法来锁定所有Android设备上的屏幕方向?以下代码适用于我的Nexus S和其他手机,但出于某种原因,ROTATION_90对应于Xoom上的SCREEN_ORIENTATION_REVERSE_PORTRAIT.

有没有办法可靠地将旋转映射到方向?

private void lockScreenOrientation() {
    if (!mScreenOrientationLocked) {
        final int orientation = getResources().getConfiguration().orientation;
        final int rotation = getWindowManager().getDefaultDisplay().getOrientation();

        if (rotation == Surface.ROTATION_0 || rotation == Surface.ROTATION_90) {
            if (orientation == Configuration.ORIENTATION_PORTRAIT) {
                setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
            }
            else if (orientation == Configuration.ORIENTATION_LANDSCAPE) {
                setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
            }
        }
        else if (rotation == Surface.ROTATION_180 || rotation == Surface.ROTATION_270) {
            if (orientation == Configuration.ORIENTATION_PORTRAIT) {
                setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT);
            }
            else if (orientation == Configuration.ORIENTATION_LANDSCAPE) {
                setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE);
            }
        }

        mScreenOrientationLocked = true;
    }
}

private void unlockScreenOrientation() { …
Run Code Online (Sandbox Code Playgroud)

android locking screen rotation orientation

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

当进度条在android中旋转时如何停止更改方向

我有一个注册屏幕,用户输入所有注册详细信息,当用户点击"注册"按钮时,我显示进度条(进度条开始旋转),然后将用户带到主屏幕.如果用户旋转当进度条旋转时,进度条被取消.我希望方向不会从potrait变为横向,反之亦然,当进度条可见时(意味着它正在旋转).进度条如何停止方向改变旋转?任何帮助将不胜感激.

android screen-orientation orientation-changes progress-bar

14
推荐指数
2
解决办法
6043
查看次数

显示ProgressDialog之前的setRequestedOrientation会导致崩溃

我正在开发一个Android应用程序,它应该只在纵向模式下运行,因为布局不适合手机的横向屏幕.但是,在平板电脑和上网本上,我希望该应用仅以横向模式运行.

我现在尝试检查应用程序是否在平板电脑设备上运行,并通过setRequestedOrientation设置相应的请求方向.

问题是,当设备尚未处于我正在请求的方向时,应用程序崩溃了,因为我在调用setRequestedOrientation之后不久显示了progressDialog,这似乎泄漏了一个窗口.

Logcat说:

10-18 21:15:30.698: E/WindowManager(653): Activity has leaked window  com.android.internal.policy.impl.PhoneWindow$DecorView@41991418 that was originally added here
10-18 21:15:30.698: E/WindowManager(653): android.view.WindowLeaked: Activity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@41991418 that was originally added here
10-18 21:15:30.698: E/WindowManager(653):   at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:279)
10-18 21:15:30.698: E/WindowManager(653):   at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:215)
10-18 21:15:30.698: E/WindowManager(653):   at android.view.WindowManagerImpl$CompatModeWrapper.addView(WindowManagerImpl.java:140)
10-18 21:15:30.698: E/WindowManager(653):   at android.view.Window$LocalWindowManager.addView(Window.java:537)
10-18 21:15:31.888: E/WindowManager(653): Activity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@41588040 that was originally added here
10-18 21:15:31.888: E/WindowManager(653): android.view.WindowLeaked: Activity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@41588040 that was originally added here
10-18 21:15:31.888: …
Run Code Online (Sandbox Code Playgroud)

android

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

Android:阻止方向以编程方式更改

我正在使用:

setRequestedOrientation(getResources().getConfiguration().orientation);
Run Code Online (Sandbox Code Playgroud)

后来:

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

它会阻止方向更改,直到任务完成,但它只适用于纵向,当应用程序在横向上时,它不会停止更改方向.

有什么建议?
OIM〜

android dynamic android-orientation android-studio

4
推荐指数
1
解决办法
2723
查看次数

我如何通过代码锁定设备的方向

可能重复:
Android:暂时禁用活动中的方向更改

我在三星Galaxy选项卡中测试.在那里,我为ORIENTATION_LANDSCAPE和ORIENTATION_PORTRAIT制作了两个布局文件夹,其中包含特定的布局xml.
在那个布局中我有一个按钮,然后在点击它时启动一个进度对话框(使用AsyncTask做一些事情,然后转到新意图)
但是当进度对话框工作时旋转设备时,该对话框和AsyncTask停止和新布局已加载.如果我理解正确的话,我认为onCreate当设备旋转时会调用它如何在我的AsyncTask启动时旋转设备时阻止调用onCreate?
IN SHOT
我如何通过代码锁定设备的方向,例如按钮上的锁定方向单击
谢谢

android

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