2 qq 38845519 qq_38845519 于 2017.09.12 23:28 提问

关于Fragment嵌套Fragment出现控制帧问题 求各位大神帮助谢谢了

这是日志错误信息

09-12 23:21:22.284 13515-13515/com.example.fxr.myapplication E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.fxr.myapplication, PID: 13515
java.lang.NullPointerException
at com.example.fxr.myapplication.message1_fragment.setTabSelection(message1_fragment.java:99)
at com.example.fxr.myapplication.message1_fragment.onCreateView(message1_fragment.java:47)
at android.app.Fragment.performCreateView(Fragment.java:1700)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:902)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1074)
at android.app.BackStackRecord.run(BackStackRecord.java:684)
at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1459)
at android.app.FragmentManagerImpl$1.run(FragmentManager.java:450)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5095)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602)
at dalvik.system.NativeStart.main(Native Method)

4个回答

qq_19074469
qq_19074469   2017.09.13 09:18

onCreateView中的代码是怎么写的?
fragment最好不要是静态的
最好是这么写:
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {

    if (view != null) {
        ViewGroup viewGroup = (ViewGroup) view.getParent();
        if (viewGroup != null)
            viewGroup.removeView(view);
    } else {
        view = inflater.inflate(getLayoutId(), container, false);

        onBindViewBefore(view);

        if (savedInstanceState != null) {
            onRestartInstance(savedInstanceState);
        }

        initView(view);
        initData();
    }

    return view;
}
qq_38845519
qq_38845519 回复qq_19074469: 谢谢了大神
2 个月之前 回复
Naide_S
Naide_S   2017.09.13 09:18

控制针问题 很好解决 细心一点 一般开发工具会告诉你哪一行 哪个对象控空指针 细心检查一遍 你上面的提示到你哪里为空 但是at com.example.fxr.myapplication.message1_fragment.setTabSelection(message1_fragment.java:99)
at com.example.fxr.myapplication.message1_fragment.onCreateView(message1_fragment.java:47)这两个方法是有问题的 运行一下再细心看一下 一般Caused by 会告诉你错误在哪里

qq_38845519
qq_38845519 回复Nade_S: 谢谢哟
2 个月之前 回复
skyunicorn
skyunicorn   2017.09.13 17:25

建议了解下fragmentation框架,适用单Activity多fragment,各种fragment嵌套都很方便,层级清晰,代码简洁,我们现在的项目就是只使用一个Activity,其他全是fragemnt

qq_38845519
qq_38845519 回复小麟: 好的
2 个月之前 回复
dongfeng9ge
dongfeng9ge   Ds   Rxr 2017.09.14 20:50

你查查message1_fragment第89行

Csdn user default icon
上传中...
上传图片
插入图片