这是一个简单的代码,在一个textview中有多个文本,
int stringIdList[] = {R.string.text1, R.string.text2, R.string.text3, R.string.text4};
int stringListCounter = 0;
TextView text1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button next = (Button) findViewById(R.id.next1);
Button previous = (Button) findViewById(R.id.pre1);
text1 = (TextView) findViewById(R.id.textView1);
next.setOnClickListener(this);
previous.setOnClickListener(this);
@Override
public void onClick(View v) {
int id = v.getId();
if(id == R.id.next1 && stringListCounter < stringIdList.length - 1) {
stringListCounter++;
} else if (id == R.id.pre1 && stringListCounter > 0) {
stringListCounter--;
}
text1.setText(stringIdList[stringListCounter]);
}
我的问题:当我关闭应用程序并再次重新打开应用程序时,我想要继续关闭应用程序之前阅读的最后一个文本,但是当关闭并重新打开应用程序时首先开始显示文本。
答案 0 :(得分:1)
U应该使用SharedPreference类来保存文本索引。
@Override
public void onPause() {
super.onPause();
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(getActivity());
pref.edit().putInt("stringListCounter", stringListCounter).commit();
}
@Override
public void onResume() {
super.onResume();
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(getActivity());
stringListCounter = pref.getInt("stringListCounter", 0);
}