0
我有一個包含Tablayout的活動,並且在每個選項卡中,我有兩個包含recyclerview的片段。無法保存包含片段的活動的實例狀態
當我嘗試單擊recyclerview中的項目時,我想從其他活動傳輸並保存源活動的實例狀態...但是,當我試圖訪問該包時,它將返回null。
這是我的onClick()被點擊了我的名爲CasesResultsTab選項卡中的項目時:
@Override
public void onClick(View v, int position) {
Case oCase = list.get(position);
Intent intent = new Intent(getActivity(), ViewCaseActivity.class);
intent.putExtra("ID", oCase.getCaseId());
intent.putExtra("className", "SearchableActivity");
getActivity().startActivity(intent);
}
所以在那之後,我現在的儲蓄父活動的狀態是這樣的:
@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
savedInstanceState.putString("query", query);
super.onSaveInstanceState(savedInstanceState);
}
和onCreate我正在像這樣訪問:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_searchable);
toolbar = (Toolbar) findViewById(R.id.toolbar);
this.setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
if(savedInstanceState != null){
this.query = savedInstanceState.getString("query");
Log.d("JC","Dito");
} else {
Intent intent = getIntent();
if (Intent.ACTION_SEARCH.equals(intent.getAction())) {
this.query = intent.getStringExtra(SearchManager.QUERY);
}
}
Log.d("JC", this.query);
setUpTabs();
}
當我試圖記錄查詢時,它返回一個呃ror says java.lang.NullPointerException:println需要一條消息 從技術上講,我的Bundle在這一點上是null。
這是爲什麼?
謝謝!
哪裏或哪個代碼崩潰?解釋或發佈logcat錯誤。 –