问题标签 [android-configchanges]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2943 浏览

android - 如何在 Android WebView 中保存当前 URL 状态?

在安卓自带的浏览器中,当你旋转手机时,WebView不会重新加载。我想知道如何做到这一点。我可以保存 的当前 URLWebview并将其传递给我自己的下一个版本,但是我该如何处理整个WebView?

0 投票
1 回答
992 浏览

android - 硬件键盘打开时避免应用程序重新启动

我目前正在为Android平台开发一个多线程游戏应用程序......到目前为止一切都很好......我刚刚解决了我的应用程序中的一个错误,导致它在方向更改时重新启动(通过指定特定方向来修复,具体取决于关于硬件键盘的可用性,这很重要'因为它是具有聊天功能的在线游戏),并且有效......但是现在我试图避免当用户简单地滑动打开硬件键盘时出现同样的问题. 我不太确定如何避免重新启动我的应用程序或保存我的应用程序状态。任何解决方案/建议?

0 投票
2 回答
3380 浏览

android - “方向|键盘隐藏”不调用 onConfigurationChanged

我想知道键盘何时关闭,所以我使用android:configChanges="orientation|keyboardHidden". 我必须重写方法 onConfigurationChanged,但似乎什么也没发生。难道我做错了什么?

0 投票
4 回答
3378 浏览

android - 更改屏幕方向时图像视图的奇怪行为

我正在使用 imageView 来显示图像。稍后我使用imageView.setImage(bitmap).now 为视图设置不同的图像,如果我将屏幕的方向从纵向更改为横向,则 imageview 将显示旧图像而不是我设置的新图像。有人可以告诉我为什么会发生这种情况以及如何克服这个问题。

0 投票
1 回答
415 浏览

java - 有条件地处理方向变化

我添加android:configChanges="orientation"并覆盖onConfigurationChanged(). 我想做的是仅当设备具有平板电脑大小的显示分辨率设置时才允许横向更改(短边大于 480 像素 - 欢迎提出更好的处理方法的建议!)。我在想这会以两种方式之一起作用,但在我的测试中无论是在手机上还是在模拟器中都不起作用。

我的第一个想法是不调用超类的实现onConfigurationChanged(),但是我抛出了一个异常,抱怨我没有调用超类。

我的第二个想法是在将 newConfig.orientationConfiguration.ORIENTATION_PORTRAIT传递给超类之前手动设置它。在我的 Activity 和框架中的实际 Activity 类之间,我有一个 ActivityBase 类,我也使用它来覆盖它。我可以在 ActivityBase 中敬酒 newConfig.orientation 的值,以查看确实被传递的配置对象确实具有新值,但它被忽略并且方向更改已经发生。

我可以在哪里放置允许我在某些情况下有条件地短路方向更改并在其他情况下允许它的代码?

0 投票
3 回答
5084 浏览

android - 屏幕方向更改时不得关闭对话框

我创建了一个自定义选项卡活动,它有两个不同的可绘制对象,用于纵向和横向。纵向屏幕的图标在 drawable-hdpi 下,而横向的图像在 drawable-land-hdpi 下。截至目前,我将配置更改放在清单中以保留对话框的可见性。

p>

每当显示对话框并且用户将方向从纵向更改为横向时,对话框仍会显示,但它在选项卡活动中使用的图像用于纵向模式。这就是为什么布局看起来不正确的原因,因为它没有将可绘制对象用于横向。有人可以帮我解决这个问题吗?谢谢。

0 投票
2 回答
1195 浏览

android - 旋转android设备时如何保持菜单项组打开

我已经处理了 android manifest 中的屏幕旋转配置更改,它适用于以对话框为主题的活动,但是对于这些菜单组,在选择菜单项(在 onOptionsItemSelected 中)后打开的菜单组在我旋转屏幕时仍然关闭。我可以在 onConfigurationChanged 中处理这些吗?或者,还有更好的方法?我附上了打开子菜单的代码。

0 投票
2 回答
429 浏览

android - Android:即使“android:configChanges =”设置为所有内容,是否也会重新创建Activity?

首先,简单描述一下问题的背景:

我在处理与活动生命周期一致的后台工作人员生命周期时遇到了麻烦。第一个问题是,每当配置更改(包括屏幕方向)时,都会创建一个新的活动实例,因此我不得不将我的工作人员从旧实例拉到新实例。其次,这很复杂,因为有时工作人员会显示进度对话框,有时还会显示用户必须与之交互的错误对话框。在活动实例中处理所有这些东西 - 工作人员、对话框等 - 已经变得如此复杂,以至于现在我清楚地看到这是错误的方法。

我相信,正确的做法是首先消除重新实例化。如果提供了,那么我的活动具有非常直接和简单的生命周期,并且不需要跟踪工作人员和对话。这可以通过放入android:configChanges="..."清单来实现。

现在,问题是:

鉴于该活动android:configChanges="..."包含所有可能的东西(方向、键盘和所有其他内容) -是否可以保证活动在活动时被实例化一次并且即使在后台也不会被杀死/重新创建?文档并不清楚这一点。

如果有人知道这种保证不成立的情况 - 请告诉我。最重要的是 - 如何模拟这些案例以进行测试?

我非常感谢您的回答。

PS:文档确实说“系统可以在任何时候删除您的活动,如果它愿意的话” - 但我们在这里不考虑它,因为当用户返回到新实例时,这将是一个新故事屏幕以这种方式删除了哪个活动。在这种情况下,我们将简单地从头开始,就像用户刚刚打开此屏幕一样。

0 投票
1 回答
4630 浏览

android - 蜂窝中的方向变化

我有一个在方向改变后不应该重新创建的活动。我在清单中的活动声明中添加了以下内容:

在 Android 2.3 上,这可以完美运行。在改变方向时无论如何都会调用HONEYCOMB_MR2 。 onCreate

是否需要在 HONEYCOMB_MR2 上执行其他操作以防止在方向更改后重新创建活动?

0 投票
1 回答
216 浏览

android - 使用 configChanges 的一个属性会调用 onConfigurationChanged() 吗?

如果我在清单文件中使用此代码:

如您所见,我声明当屏幕旋转和键盘可见性已更改时,不应重新启动活动。

但是,这是否意味着onConfigurationChanged()仅在这两个事件的情况下才会调用该方法(在其他情况下,活动将重新启动)?

或者这意味着即使只使用了一个属性,活动也不会重新启动?

我无法在文档中找到这个答案。