我使用默認佈局創建了RecyclerView列表。然後我將一個新項目添加到列表中,然後佈局更新以顯示新項目。然後我導航到以前的活動。當我返回到RecyclerView活動時,我返回到通用默認列表,並且我的RecyclerView列表中的新項目消失了。Android:我如何返回到新創建的RecyclerView列表?
那麼如何返回到RecyclerView和我創建的新項目而不是通用列表?我是否需要添加一些代碼,說明適配器的大小是否大於0,那麼不要使用現有的代碼創建新的列表?我應該在RecyclerView活動還是在適配器中進行測試?如果沒有,我的問題是否會出現,因爲適配器與RecyclerView活動的savedInstanceState無關?
活動:
public class ListContactsActivity extends AppCompatActivity {
private ListContactsAdapter mContactsAdapter;
private RecyclerView mRecyclerView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_recyclerviewlist);
final List<Contact> mContacts;
mContacts = new ArrayList<>();
mRecyclerView = (RecyclerView) findViewById(R.id.cardList);
mRecyclerView.setLayoutManager(getLayoutManager());
mRecyclerView.setHasFixedSize(true);
mContactsAdapter = new ListContactsAdapter(this, mContacts);
mRecyclerView.setAdapter(mContactsAdapter);
...
}
private RecyclerView.LayoutManager getLayoutManager() {
LinearLayoutManager llm = new LinearLayoutManager(this);
llm.setOrientation(LinearLayoutManager.VERTICAL);
return llm;
}
適配器:在活動
class ListContactsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
...
@Override
public int getItemCount() {
return mItems.size();
}
工具欄代碼:
...
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
toolbar.setNavigationIcon(R.drawable.ic_action_previous_item);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onBackPressed();
}
});
請解釋downvote,我對於stackoverflow比較新。 – AJW
顯示ListContactsActivity的來源。 – aelimill
好吧,我現在發佈。 – AJW