android - 使用 Fragments 处理方向变化

标签 android android-3.0-honeycomb android-fragments

我目前正在使用 HC 兼容包使用多 Pane Fragment 化 View 测试我的应用程序,并且有很多难以处理的方向更改。

我的 Host Activity 有 2 个横向 Pane (menuFramecontentFrame),只有 menuFrame 纵向,其中加载了适当的 fragment 。如果我在两个 Pane 中都有内容,但随后将方向更改为纵向,我会得到一个 NPE,因为它试图在 fragment 中加载 View ,该 fragment 将位于(不存在的)contentFrame 中。在内容 fragment 中使用 setRetainState() 方法无效。我该如何解决这个问题以防止系统加载不会显示的 fragment ?

非常感谢!

最佳答案

似乎 onCreateViewMethod 导致了问题;如果容器为空,它必须返回空:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {   
    if (container == null) // must put this in
        return null;
    return inflater.inflate(R.layout.<layout>, container, false);
}

关于android - 使用 Fragments 处理方向变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6164341/

相关文章:

java - ViewPager PagerAdapter 不更新 View

android - 实例化 Intent 时出错

android - 默认图片库无法以编程方式在 Android HoneyComb 平板电脑 (v 3.2) 中打开

android - 地理围栏转换后,我如何在主要 Activity 上做些什么?

android - 动画 fragment 之间的过渡

android - SearchView 的 OnCloseListener 不起作用

android - 调用 popBackStack() 后当前 fragment 会发生什么情况?

android - NestedScrollView 剪切/覆盖嵌套 fragment 的底部

Android检测图像上是否有白色并显示 toast

android - 如何为 Android 中的 Spinner 设置错误消息?