我创建了活动A> B> C。 活动A将意图传递给B,该意图将确定B ListView上的值。 问题是,当我按下C上的后退按钮时,B上的前一个列表不再存在。 当用户按下C上的后退按钮时,如何将列表值保留在B上?
答案 0 :(得分:1)
使用静态列表变量来存储/填充列表数据。您可以在活动A上填充此列表并在活动B上使用,因为此变量将在整个Android生命周期中保留,因此从活动C返回时,活动B上的列表不应受到影响。
public class ActivityA extends Activity{
//Inside Activity A
public static final List<MODEL> DATA_LIST = new ArrayList<MODEL>(); //here MODEL may be any type of object as required
//...
}
要在活动B上使用此变量,只需使用ActivityA.DATA_LIST来引用列表变量。