Android getActionBar() return null

建立了新的Android APP,使用了 ActionBar,
在 getActionBar() 時,出現了null pointer exception

Root cause

使用到沒有ActionBar的theme

AandroidManifest.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

Solution

設定使用有ActionBar的theme,
ex: Theme.Holo.Light

AndroidManifest.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@android:style/Theme.Holo.Light">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
文章目录
  1. 1. Root cause
    1. 1.1. AandroidManifest.xml
  2. 2. Solution
    1. 2.1. AndroidManifest.xml
,