【问题标题】:Android loadout/layout-land onConfigurationChangedAndroid loadout/layout-land onConfigurationChanged
【发布时间】:2018-04-04 04:29:36
【问题描述】:
我的 Android 应用程序中有一个 DialogFragment,我需要设置 android:configChanges="orientation|screenSize,我想为我的 DialogFragment 加载不同的布局,纵向或横向,但现在 Android 不会自动为我执行此操作,我想我需要更新onConfigurationChanged中的布局,但是不知道怎么做,有示例代码会更好,谢谢!
【问题讨论】:
标签:
android
android-layout
dialogfragment
android-configchanges
【解决方案1】:
通过在 AndroidManifest.xml 中的 Activity 上设置 android:configChanges 标志来处理方向更改的另一种最常见的解决方案。使用此属性不会重新创建您的活动,并且在方向更改后您的所有视图和数据仍然存在。
试试这个代码并改变你的配置:
<activity
android:name="com.example.test.activity.MainActivity"
android:configChanges="orientation|screenSize|keyboardHidden"/>
此属性通知 Android 系统您将处理此 Activity 的方向和 screenSize 更改。因此,Android 不会破坏和重新创建您的 Activity,而是会旋转屏幕并调用生命周期回调方法之一,即 onConfigurationChanged(Configuration)。
试试这个
【解决方案2】:
我终于找到了我的解决方案,但我认为它可能只适用于我的情况,我的情况是我想以纵向显示 imageView 而不是以横向显示,所以我在函数 @987654321 中将可见性设置为可见或消失@ 并且有效