我在android中使用横向模式时遇到问题。如何避免在android中将图像位置从纵向模式更改为横向模式。通常横向4和纵向模式很好。如果我们从一种模式转到另一种模式,那么图像的位置就会改变。请帮我
问问题
265 次
2 回答
1
您在其中显示图像的活动,在 Android 清单文件中将该活动注册为:
<activity
android:name="com.android.YourActivity"
android:screenOrientation="portrait">
</activity>
这样,它将强制活动仅停留在纵向模式。
于 2012-08-28T06:44:00.297 回答
1
方向更改会导致正在运行的 Activity 重新启动。重新启动行为旨在通过使用与新设备配置匹配的替代资源自动重新加载您的应用程序来帮助您的应用程序适应新配置。因此是资源密集型的。
根据您希望应用程序的行为方式和设备性能,您可以通过以下方式处理方向更改(整体配置更改):
固定方向:如果您希望您的应用在横向或纵向模式下具有固定方向。为此,您需要在清单文件中的活动标签下设置此属性。
android:screenOrientation="portrait" or android:screenOrientation="landscape"
自己处理配置更改:如果您的应用程序在特定配置更改期间不需要更新资源并且您有性能限制要求您避免重新启动活动,您可以自己处理方向更改,那么您可以声明您的活动处理配置更改本身,这会阻止系统重新启动您的活动。
为此,您需要在清单文件中声明:<activity android:name=".MyActivity" android:configChanges="orientation|keyboardHidden" android:label="@string/app_name"/>
并且您需要覆盖活动的 onConfigurationChanged() 方法。
**将此作为最后的手段,因为每件事都需要您处理。默认行为:您可以让 android 从资源文件夹中选择替代资源来处理配置更改。您只需为横向和纵向模式提供这些备用资源。
于 2012-08-28T07:20:20.150 回答