我正在使用模板創建的NavigationDrawer(當啓動一個新項目時)。 我試圖讓材質設計兼容性,所以我使用AppCompat v7。 我跟着these instructions設置工具欄作爲我的動作條(即使用setSupportActionBar我的工具欄上),我在(內onCreateView)NavigationDrawerFragment不能與AppCompat工具欄一起使用
mDrawerListView.setAdapter(new ArrayAdapter<String>(
getActionBar().getThemedContext(),
android.R.layout.simple_list_item_activated_1,
android.R.id.text1, ...
現在我懷疑的問題讓我NavigationDrawerFragment一個NPE與getActionBar()我呼籲NavigationDrawerFragment設置()之前調用活動的onCreate setSupportActionBar(工具欄)...
我 -
private ActionBar getActionBar() {
return ((ActionBarActivity) getActivity()).getSupportActionBar();
}
,但我不知道爲什麼:內部片段的方法如果任何人有一個線索爲什麼發生這種情況請幫助!
請你詳細說明一下嗎? – bernlim 2015-03-27 05:34:37
@bernlim 當然。問題是當我的活動正在創建時,片段的onCreateView方法在活動的onCreate之前被調用。 NPE出現在片段的onCreateView中,因爲我嘗試獲取當時爲空的操作欄,因爲活動的onCreate尚未被調用,所以ActionBar還沒有被初始化/設置/創建。 這有道理嗎? – Djordje 2015-09-03 13:45:38