我在安装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();
}
Run Code Online (Sandbox Code Playgroud)
我的计数器(veces)冻结在1,这就是问题所在.
问题在于,您在阅读和写作时将您的柜台命名为不同:
veces = prefs.getInt("NroVeces", 0);
// your code in between
editor.putInt("NroVeces", veces);
Run Code Online (Sandbox Code Playgroud)
这应该解决它.
| 归档时间: |
|
| 查看次数: |
80 次 |
| 最近记录: |