9

我有一个列表视图与我的main.xml布局中的两个按钮。只需点击一个按钮,我就可以动态创建一个文本视图并将其添加到屏幕底部以确认用户交互。当用户点击第二个按钮(确认按钮)时,我需要将该文本添加到列表视图。为了支持横向模式,我在layout-land文件夹中有相同的布局文件。当我点击第一个按钮时,它将创建一些带有文本的textview并添加到屏幕底部。现在,如果更改设备方向,那么它将加载横向main.xml,并且活动正在重新创建。所以我的textview正在崩溃。我怎样才能防止对方向改变的活动的娱乐。 (但它应该选择其他布局文件)。Android:停止重新定位变化的活动

+0

http://stackoverflow.com/questions/456211/activity-restart-on -rotation-android –

回答

26

只需编辑androidmanifest.xml中的活动标签即可。

<activity 
      android:configChanges="keyboardHidden|orientation" 
      android:name=".testActivity" 
      android:label="@string/app_name"></activity> 
+22

在较新的Android版本中使用'android:configChanges =“keyboardHidden | orientation | screenSize”' – jhavatar

+0

大帮忙谢谢你! –

+1

这会禁用布局更改。我如何解决这个问题? – Remian8985

5

您应该添加屏幕尺寸

,如果你的应用程序的目标API级别12或更低,那么你的活动总是处理这样的配置变化本身(此配置更改不重新启动您的活动,即使在Android 3.2或更高版本的设备上运行)。

在API级别13

那么就应该是这样的

<activity 
       android:configChanges="keyboardHidden|orientation|screenSize" 
       android:name=".testActivity" 
       android:label="@string/app_name"></activity> 

http://developer.android.com/guide/topics/manifest/activity-element.html