2011-12-27 85 views
5

我正在开发两种语言(阿拉伯语和英语),当第一个活动上一个按钮,用户按下它认为另一个活动的应用程序包含(定时器,字符串和许多不同的值的数组)
当用户改变纵向和横向失去了价值,如何处理这个问题(保留值和对象)如何在代码中处理Android纵向和横向?

亲切的问候,之间

+0

这个答案是allready解决 [见这个问题] [1] [1]:http://stackoverflow.com/问题/ 7223582/Android的屏幕方位用数据丢失预防/ 7224074#7224074 – Ceetn 2011-12-27 15:11:30

回答

6

当你旋转你的活动重新启动设备。为了避免这种情况,您必须自己处理方向更改。为此,您必须将配置添加到清单XML(android:configChanges)中并覆盖您的活动中的onConfigurationChanged函数。

Here's an example来自Android文档。实现这个功能将允许您在方向更改期间保留活动中的状态(和变量)。

+1

非常感谢快速回复, 我知道它是重新启动,但是,如何防止?如果我们不能防止这种情况,我应该在onConfigurationChanged方法中做什么? – 2011-12-28 09:36:13

+2

当您在清单中添加您的活动处理configChanges以进行方向更改时,并且您覆盖onConfiguriationChanged时,则您可以控制在方向更改期间发生的情况,并且您的活动不会重新启动。实施这个例子,看看会发生什么。 – jlindenbaum 2011-12-28 16:18:41

0

在AndroidManifest.xml文件

<activity android:name=".MainActivity" 
     android:screenOrientation="portrait"> 
+0

欢迎来到Stack Overflow!虽然这段代码可能会回答这个问题,但提供关于* why和/或* how *这个代码如何回答这个问题的附加上下文会提高它的长期价值。 – 2016-03-13 03:52:50