【发布时间】:2017-11-23 20:44:19
【问题描述】:
我有一个与 recyclerview 相关的活动。在 recyclerview 的适配器中,当用户点击元素时,会创建一个新的 Fragment。问题是当我按下主页按钮时,杀死应用程序进程然后恢复应用程序,片段没有重新创建。应用进程被杀死后如何恢复片段?
编辑:
我在活动中的 onCreate 方法:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
context = this;
rvMain = (RecyclerView) findViewById(R.id.rvMain);
rvMain.setLayoutManager(new LinearLayoutManager(context));
MainAdapter adapter = new MainAdapter(numbers, context);
rvMain.setAdapter(adapter);
}
调用片段的recyclerview适配器中的onBindViewHolder方法:
@Override
public void onBindViewHolder(MainViewHolder holder, final int position) {
final Number number = numbers.get(position);
holder.lytMain.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
DetailedFragment fragment = new DetailedFragment();
Bundle bundle = new Bundle();
bundle.putString("message", number.getName());
fragment.setArguments(bundle);
((MainActivity) context).getSupportFragmentManager().beginTransaction()
.addToBackStack("fragment")
.replace(R.id.lytDetailed, fragment)
.commit();
}
});
}
【问题讨论】:
-
你能发布你的代码吗?
-
@YusufÇağlar 添加了一些代码
-
addToBackStack 为我完成这项工作
标签: android android-fragments android-lifecycle