我在安装Android的SharedPreferences时遇到一些麻烦,这很简单。我只想要一个点击计数器并使用SharedPrefs保存点击次数,这里是代码:
public class MainActivity extends Activity {
public int veces;
SharedPreferences prefs;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
prefs = getSharedPreferences("MisPrefs", MODE_PRIVATE);
veces = prefs.getInt("nroVeces", 0);
//EditText TextOut = (EditText) findViewById(R.id.Texty);
// TextOut.setText("El boton ha sido tocado "+veces+"veces");
setContentView(R.layout.activity_main);
}
public void Presionado(View view){
EditText TextOut = (EditText) findViewById(R.id.Texty);
SharedPreferences.Editor editor = prefs.edit();
veces = prefs.getInt("NroVeces", 0);
veces ++;
TextOut.setText("El boton ha sido tocado "+veces+" veces.");
editor.putInt("nroVeces", veces);
editor.commit();
}
我的计数器(veces)冻结为1,这就是问题所在。
答案 0 :(得分:5)
问题在于,您在阅读和写作时将您的柜台命名为不同:
veces = prefs.getInt("NroVeces", 0);
// your code in between
editor.putInt("NroVeces", veces);
这应该解决它。