我疯了试图弄清楚如何在某处存储变量,所以当我切换到另一个活动时,然后又回到变量仍然包含此值。我前一段时间使用共享首选项,但这是一个不好的解决方案,这是比我需要的更永久,而不是正确的方式。什么是存储变量的正确方法,以便在活动更改时保留此值?
如果在活动一中按下了某个按钮,这将通过一个意图打开活动二,并将值设置为活动二中的一个字符串。当转到另一个活动时,或者按下后退按钮,然后返回到活动二时,该字符串将重置为其初始值。
我曾尝试:
共享偏好(工作,但不太好) 静态变量(好像没任何区别,也许我做错了什么) 使用保存实例状态和恢复像这样状态的方法:
@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
savedInstanceState.putString(destination, des);
super.onSaveInstanceState(savedInstanceState);
}
@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
des = savedInstanceState.getString(destination);
}
我在哪里,我承认我不知道如何做到这一点,并Frankensteining代码一起导致我比什么都重要的问题,但到目前为止,在地平线上没有叉子。
为了在活动之间保存一个字符串内的值,你有什么经验的程序员推荐?
我不知道为什么人们有时候这么快就会失望。非常刺激。对于未来的下台者,如果我们在人们展示真实努力时这样做,那么我们将失去该网站,因为人们会害怕寻求帮助。在那里,这是我每天2分钱:P – codeMagic 2013-03-14 02:18:07
感谢codeMagic,我不得不说,有很多时候我写了一个问题,然后删除它,因为没有什么比downvote更糟,特别是当你在阶段你需要寻求帮助的地方。 – deucalion0 2013-03-14 09:48:33