Android 显示片段会引发空指针异常

Android 显示片段会引发空指针异常,android,android-fragments,android-support-library,Android,Android Fragments,Android Support Library,我有一个android应用程序,针对api级别9和用户应用程序compat库。因此,当我点击一个按钮时,它会显示一个片段,但我不知道为什么这是不可能的,因为它在log cat中向我显示了这个错误: /AndroidRuntime﹕ FATAL EXCEPTION: main Process: com.myapp, PID: 14290 java.lang.NullPointerException at com.myapp.Main.onClick(Main.java:1204)

我有一个android应用程序,针对api级别9和用户应用程序compat库。因此,当我点击一个按钮时,它会显示一个片段,但我不知道为什么这是不可能的,因为它在log cat中向我显示了这个错误:

/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.myapp, PID: 14290
java.lang.NullPointerException
        at com.myapp.Main.onClick(Main.java:1204)
        at android.view.View.performClick(View.java:4654)
        at android.view.View$PerformClick.run(View.java:19438)
        at android.os.Handler.handleCallback(Handler.java:733)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:146)
        at android.app.ActivityThread.main(ActivityThread.java:5602)
        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:1283)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099)
        at dalvik.system.NativeStart.main(Native Method)
这是我得到的错误:

 @Override
    public void onClick(View v) {
        Log.d("--", "view clicked");
        if (adapter != null)
            if (!menuShown && adapter.getNextPrayTime() != null) {
                switch (v.getId()) {
                    case R.id.action_share:
                        View view = findViewById(R.id.main_rl);
                        shareImage(view, false);
                        break;
                    case R.id.action_menu:
                        Bundle bundle = new Bundle();
                        bundle.putSerializable(Constants.NEXT_TIME,
                                adapter.getNextPrayTime());
                        MenuFragment menuFragment = new MenuFragment();
                        menuFragment.setArguments(bundle);
                        Log.e("--",menuFragment+" ex. "+bundle);
    //this is line 1204
                        FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
                        transaction.commitAllowingStateLoss();
                        transaction.setCustomAnimations(
                                R.anim.slide_in_from_bottom,
                                R.anim.slide_out_to_bottom,
                                R.anim.slide_in_from_bottom,
                                R.anim.slide_out_to_bottom);
                        transaction.add(android.R.id.content, menuFragment);
                        transaction.addToBackStack(null);
                        transaction.commit();
                        menuShown = true;
                        break;
                }
            }
    }
有没有人知道为什么会发生这种情况,这样我就可以解决这个问题

谢谢

编辑:此活动扩展了
ActionBarActivity

您可以尝试以下操作:

transaction.commitAllowingStateLoss();

您是否构建了jar android-support-v4.jar?单击显示方法。您确定这是第1204行吗
getSupportFragmentManager
无法返回
null
@Hulk我在libs文件夹中有android-support-v4.jar,在我的gradle中有:
编译文件树(dir:'libs',include:'*.jar')
好吧,主要是你导入的片段类型,因为你使用的api小于11。我确信您必须导入支持v4片段。做一点改变。从碎片活动扩展您的活动