我有三项活动。活动A提供组列表。单击某个组时,您将转到活动B,传递所单击项目的组ID,以便您可以看到该组的详细信息。当您按活动B上的“添加”按钮时,您将进入活动C.
使用操作栏的后退和/或上移按钮,我可以毫无问题地从活动B导航到活动A.我可以再次重新加载活动A的列表项。但是当我按活动C的操作栏的后退按钮转到活动B时,会发生错误,因为活动A中传递的组ID未恢复。
请告诉我什么是最好的事情。我是新手。
PS:我知道有硬件后退按钮,但根据要求,操作栏中的后退按钮是必需的。
答案 0 :(得分:0)
当您从活动A导航到活动B然后导航到活动C时,您不需要杀死活动。很可能,您正在查杀活动,这就是从活动A引用该groupId不再可用的原因。
答案 1 :(得分:0)
我想,你是从活动C到B的意图。通过这样做,你已经调用了活动B的onCreate方法。所以我建议你在活动C中编写代码列表
@Override
public void onBackPressed() {
finish();
}
答案 2 :(得分:0)
当您按下操作栏中的后退按钮时,您是否正在创建新意图并推送活动。如果是这样,那么你必须将id传递给class。
如果你调用finish()
而不是在后退按钮的onClick监听器中创建意图,我认为恢复id没有问题。
答案 3 :(得分:0)
在清单文件中使用这样的元数据标记,例如
<activity ...>
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.org.abc.board" />
</activity>