我已经更新了API 21,工具和其他功能,有些项目中的ActionBar已不可见。我执行了以下代码,但应用程序崩溃,显示NullPointerException。

ActionBar actionBar = getActionBar();
actionBar.show();

Logcat输出

02-23 18:03:36.269:E / AndroidRuntime(3327):致命意外:主要
02-23 18:03:36.269:E / AndroidRuntime(3327):进程:com.example.twaapp,PID:3327
02-23 18:03:36.269:E / AndroidRuntime(3327):java.lang.RuntimeException:无法启动 Activity ComponentInfo {com.example.twaapp / com.example.twaapp.MainActivity}:java.lang.NullPointerException
02-23 18:03:36.269:E / AndroidRuntime(3327):位于android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2198)
02-23 18:03:36.269:E / AndroidRuntime(3327):位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2257)
02-23 18:03:36.269:E / AndroidRuntime(3327):at android.app.ActivityThread.access $ 800(ActivityThread.java:139)
02-23 18:03:36.269:E / AndroidRuntime(3327):位于android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1210)
02-23 18:03:36.269:E / AndroidRuntime(3327):位于android.os.Handler.dispatchMessage(Handler.java:102)
02-23 18:03:36.269:E / AndroidRuntime(3327):位于android.os.Looper.loop(Looper.java:136)
02-23 18:03:36.269:E / AndroidRuntime(3327):位于android.app.ActivityThread.main(ActivityThread.java:5086)
02-23 18:03:36.269:E / AndroidRuntime(3327):at java.lang.reflect.Method.invokeNative(本机方法)
02-23 18:03:36.269:E / AndroidRuntime(3327):at java.lang.reflect.Method.invoke(Method.java:515)
02-23 18:03:36.269:E / AndroidRuntime(3327):在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:785)
02-23 18:03:36.269:E / AndroidRuntime(3327):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
02-23 18:03:36.269:E / AndroidRuntime(3327):在dalvik.system.NativeStart.main(本机方法)
02-23 18:03:36.269:E / AndroidRuntime(3327):由:java.lang.NullPointerException
02-23 18:03:36.269:E / AndroidRuntime(3327):在com.example.twaapp.MainActivity.onCreate(MainActivity.java:82)
02-23 18:03:36.269:E / AndroidRuntime(3327):位于android.app.Activity.performCreate(Activity.java:5248)
02-23 18:03:36.269:E / AndroidRuntime(3327):位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1110)
02-23 18:03:36.269:E / AndroidRuntime(3327):位于android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2162)
02-23 18:03:36.269:E / AndroidRuntime(3327):...还有11个

如何使AB可见?

最佳答案

确保您的 Activity 扩展了ActionBarActivity。像这样:MainActivity extends ActionBarActivity。我发现当我删除它并扩展其他内容时,操作栏将消失。还要检查xml的主题并进行更改。

看一下这个:

can I use a compatible action bar AND a fragment in the same activity?

08-27 15:46