ABI*_*ABI 3 java android android-layout android-view android-actionbar
我已经更新了API 21,工具和附加功能,一些项目中的ActionBar变得不可见.我在下面的代码中做了这个,但app崩溃显示NullPointerException.
ActionBar actionBar = getActionBar();
actionBar.show();
Run Code Online (Sandbox Code Playgroud)
Logcat输出
02-23 18:03:36.269:E/AndroidRuntime(3327):FATAL EXCEPTION:main 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:无法启动活动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):at android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2257)02-23 18:03:36.269:E/AndroidRuntime(3327):在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(Native Method)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):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:785)02-23 18:03:36.269:E/AndroidRuntime(3327):at com. android.internal.os.ZygoteInit.main(ZygoteInit.java:601)02-23 18:03:36.269:E/AndroidRuntime(3327):at dalvik.system.NativeStart.main(Native Method)02-23 18:03 :36.269:E/AndroidRuntime(3327):引起:java.lang.NullPointerException 02-23 18:03:36.269:E/AndroidRuntime(3327):at 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):at android .app.Instrumentatio n.callActivityOnCreate(Instrumentation.java:1110)02-23 18:03:36.269:E/AndroidRuntime(3327):at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2162)02-23 18:03:36.269: E/AndroidRuntime(3327):......还有11个
如何让AB可见?
你的Activity课应该像这样扩展:
public class MainActivity extends ActionBarActivity{
....
}
Run Code Online (Sandbox Code Playgroud)
代替
public class MainActivity extends FragmentActivity{
....
}
Run Code Online (Sandbox Code Playgroud)
此外,你需要打电话
ActionBar = getSupportActionBar();
Run Code Online (Sandbox Code Playgroud)
代替
ActionBar = getActionBar();
Run Code Online (Sandbox Code Playgroud)
试试这个.这会奏效.
| 归档时间: |
|
| 查看次数: |
457 次 |
| 最近记录: |