我尝试实现一个设置 Activity 类,但它给了我一个错误:
Caused by: java.lang.NullPointerException
at com.example.andrei.sunshine.SettingsActivity.setupActionBar(SettingsActivity.java:58)
at com.example.andrei.sunshine.SettingsActivity.onCreate(SettingsActivity.java:48)
at android.app.Activity.performCreate(Activity.java:5264)
这是行:getActionBar().setDisplayHomeAsUpEnabled(true);
AndroidManifest 是:
<?xml version="1.0" encoding="utf-8"?>
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".DetailActivity"
android:label="@string/title_activity_detail"
android:parentActivityName=".MainActivity" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.example.andrei.sunshine.MainActivity" />
</activity>
<activity
android:name=".SettingsActivity"
android:label="@string/title_activity_settings"
android:parentActivityName=".MainActivity" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.example.andrei.sunshine.MainActivity" />
</activity>
</application>
请帮助我
最佳答案
如果您的SettingsActivity
扩展ActionBarActivity
,您的getActionBar();
将可用。
public class SettingsActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.yourLayout);
//If you use support library
//getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getActionBar().setDisplayHomeAsUpEnabled(true);
}
}
请参阅documentation了解更多信息。
关于java - Android java.lang.NullPointerException getActionBar(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28406895/