我在我的应用中使用 fragment 。大多数 fragment 应该只有一个方向——肖像。所以我强制 holder activity 始终处于纵向模式。
但我的一个 fragment 应该同时具有纵向和横向模式。如何仅对一个 fragment 启用方向更改?或者我需要让它成为一个单独的 Activity 来处理方向而不依赖于其他 fragment ?
最佳答案
您必须手动完成。
1) 将此行添加到您的 Activity 标签 android:configChanges="orientation|screenSize"
2) 在你的 fragmtn 或 activity 中覆盖配置更改回调
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
} else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
}
//Your fragment animation layout changing code
}
关于android - 当某些 fragment 可见时启用显示方向更改,当其他 fragment 可见时禁用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15069633/