发现在 findViewById(R.id.eat) 返回null,我不清楚哪里错了,返回了null

解决方案 »

  1.   

    logcat06-22 11:30:27.610: E/AndroidRuntime(2013): FATAL EXCEPTION: main
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at android.app.ActivityThread.access$800(ActivityThread.java:135)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at android.os.Handler.dispatchMessage(Handler.java:102)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at android.os.Looper.loop(Looper.java:136)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at android.app.ActivityThread.main(ActivityThread.java:5017)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at java.lang.reflect.Method.invokeNative(Native Method)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at java.lang.reflect.Method.invoke(Method.java:515)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at dalvik.system.NativeStart.main(Native Method)
    06-22 11:30:27.610: E/AndroidRuntime(2013): Caused by: java.lang.NullPointerException
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at com.hipad.checkboxtext.MainActivity.onCreate(MainActivity.java:38)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at android.app.Activity.performCreate(Activity.java:5231)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
    06-22 11:30:27.610: E/AndroidRuntime(2013):  ... 11 more
      

  2.   

    你实例化控件错了地方
    写在 /**
         * A placeholder fragment containing a simple view.
         */
        public static class PlaceholderFragment extends Fragment {
     
            public PlaceholderFragment() {
            }
     
            @Override
            public View onCreateView(LayoutInflater inflater, ViewGroup container,
                    Bundle savedInstanceState) {
                View rootView = inflater.inflate(R.layout.fragment_main, container,
                        false);
            eat = (CheckBox)rootView .findViewById(R.id.eat);
            System.out.println(R.id.eat+"...");
            sleep = (CheckBox)rootView.findViewById(R.id.sleep);
            all = (CheckBox)rootView.findViewById(R.id.all);
                return rootView;
            }
        }中的onCreateViewl里面
      

  3.   

    你控件写在fragment_main.xml 加载页面却是activity_main.xml 当然报null啦
      

  4.   

    3#正解!注意PlaceholderFragment ,这是跟之前版本的不同!