Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 即使在OnCreateView上膨胀,视图仍然为空_Android_Android Fragments - Fatal编程技术网

Android 即使在OnCreateView上膨胀,视图仍然为空

Android 即使在OnCreateView上膨胀,视图仍然为空,android,android-fragments,Android,Android Fragments,我已经在同一次撞车事故中挣扎了4个小时,但我仍然无法找出原因。任何善良的灵魂能启发我吗?我得到了这个错误 java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“android.view.view android.view.view.findViewById(int)” 当它开始加载我的textview lbl时,它就崩溃了,并告诉我这个错误 下面是我的代码: public class BookDoc extends Fragment { V

我已经在同一次撞车事故中挣扎了4个小时,但我仍然无法找出原因。任何善良的灵魂能启发我吗?我得到了这个错误

java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“android.view.view android.view.view.findViewById(int)”

当它开始加载我的textview lbl时,它就崩溃了,并告诉我这个错误

下面是我的代码:

    public class BookDoc extends Fragment {
    View view;
     @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
            // Inflate the layout for this fragment
         if (view != null) {
                ViewGroup parent = (ViewGroup) view.getParent();
                if (parent != null) {
                    parent.removeView(view);
                }
            }
            try {
                view = inflater.inflate(R.layout.activity_main, container, false);
            } catch (InflateException e) {

            }
         StrictMode.ThreadPolicy policy = new StrictMode.
                 ThreadPolicy.Builder().permitAll().build();
                 StrictMode.setThreadPolicy(policy);

        Typeface type = Typeface.createFromAsset(getActivity().getAssets(),"fonts/verdana.ttf"); 
        TextView lbl = (TextView) view.findViewById(R.id.textViewa);
        return view
        }
这是我的xml:


您的视图未初始化,仍然为空。在“if语句”之前,按如下方式初始化视图:

view = (View) inflater.inflate(R.layout.your_layout_file, container, false);

其他一切都很好

你有没有遇到过膨胀异常?然后,你应该改变你的布局,而不是只是不崩溃,继续,好像一切都好。(空的catch块是个问题,不是解决方案)旁注-不要关闭严格模式线程策略。这样做可以确保你的代码质量是垃圾,你的线程将导致巨大的UI延迟。触摸StrictMode是一种迹象,表明你实际上不知道自己在做什么,而且你正在复制粘贴白痴提供的非常古老、非常无厘头的教程。如果你的代码正常,你必须验证manifiest.xml文件,在这里你应该添加你的活动,并允许你的应用程序需要。活动的示例:。许可证示例:“在您的“if语句”之前…”-因此您希望OP初始化视图,然后从该视图组中删除尚未添加到父视图组的新膨胀视图?@0X0nosugar我只是解决错误,而不是解决逻辑问题。他正在检查父视图组是否不为null,因此它不会删除没有父视图的视图Thank you@Dawit!我试图从eclipse移植一个旧项目。。几年前它在eclipse上编译时的工作方式有什么不同吗ago@0X0nosugar我的逻辑错了吗?什么是推荐的解决方案,因为我是全新的android@user3145668它应该可以正常工作,可能需要升级gradle并构建文件。但同样,它会正常工作