我怎样才能在Android中使用共享偏好计数器?(how can i use share preference in counter in android?)
对不起,因为我的简单问题3,但我需要你的帮助。 我想在我的应用中有一个计数器(使用shared preference ),如下所示:
首先,有2个按钮, START和RESET 。 如果单击RESET ,则计数器从0开始。 同样,如果START被点击,则计数器从共享偏好数据开始。 开始计算 最后一次,我想在股票偏好中保存柜台。 (但我不知道最好将它保存在BACK btn或CLICK btn中)我的问题在于共享偏好部分。 请帮我,我该怎么做? 非常感谢!
编辑:这是我的代码
public class CountActivity extends Activity { private Button click; private int count,savedCount; private String count_text; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.counting); click= (Button) findViewById(R.id.vow_counting); final Typeface typeface = Typeface.createFromAsset(getAssets(),"fonts/Far_Homa.ttf"); final SharedPreferences sharedPreferences=getSharedPreferences("counters", Context.MODE_PRIVATE); final SharedPreferences.Editor editor=sharedPreferences.edit(); AlertDialog.Builder fBuilder=new AlertDialog.Builder(VowCountActivity.this); fBuilder.setMessage("please choose"); fBuilder.setCancelable(false); fBuilder.setPositiveButton("start from beging", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialogInterface, int i) { count = sharedPreferences.getInt("counter", 0); click.setText("0"); click.setTypeface(Typeface.createFromAsset(getAssets(),"fonts/Far_Homa.ttf")); dialogInterface.cancel(); } }); fBuilder.setNegativeButton("countinue", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialogInterface, int i) { count = sharedPreferences.getInt("counter",savedCount); editor.putInt("counter",savedCount).commit(); dialogInterface.cancel(); } }); fBuilder.show(); click.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { count++; count_text=Integer.toString(count); click.setText(count_text); click.setTypeface(typeface); savedCount = sharedPreferences.getInt("savedCounter", count); vibrate(500); } }); } // vibrate public void vibrate(int duration) { Vibrator vibs = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); vibs.vibrate(duration); }Excuse me because 3 of my simple question, but I need your help. I want to have a counter (with using shared preference) in my app like this:
At the first, there are 2 buttons, START and RESET. If RESET is clicked, the counter starts from 0. Also if START is clicked, the counter starts from shared preference data. Start counting At last time, I want to save counter in share preference. (but I don't know its better to save it in BACK btn or CLICK btn)My problem is in share preference part. Please help me how can I do this? Thanks a lot!
Edit: this is my code
public class CountActivity extends Activity { private Button click; private int count,savedCount; private String count_text; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.counting); click= (Button) findViewById(R.id.vow_counting); final Typeface typeface = Typeface.createFromAsset(getAssets(),"fonts/Far_Homa.ttf"); final SharedPreferences sharedPreferences=getSharedPreferences("counters", Context.MODE_PRIVATE); final SharedPreferences.Editor editor=sharedPreferences.edit(); AlertDialog.Builder fBuilder=new AlertDialog.Builder(VowCountActivity.this); fBuilder.setMessage("please choose"); fBuilder.setCancelable(false); fBuilder.setPositiveButton("start from beging", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialogInterface, int i) { count = sharedPreferences.getInt("counter", 0); click.setText("0"); click.setTypeface(Typeface.createFromAsset(getAssets(),"fonts/Far_Homa.ttf")); dialogInterface.cancel(); } }); fBuilder.setNegativeButton("countinue", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialogInterface, int i) { count = sharedPreferences.getInt("counter",savedCount); editor.putInt("counter",savedCount).commit(); dialogInterface.cancel(); } }); fBuilder.show(); click.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { count++; count_text=Integer.toString(count); click.setText(count_text); click.setTypeface(typeface); savedCount = sharedPreferences.getInt("savedCounter", count); vibrate(500); } }); } // vibrate public void vibrate(int duration) { Vibrator vibs = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); vibs.vibrate(duration); }最满意答案
你应该使用这个代码,等待你的
public class CountActivity extends Activity { private Button click; private int count,savedCount; private String count_text; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.counting); click= (Button) findViewById(R.id.vow_counting); final Typeface typeface = Typeface.createFromAsset(getAssets(),"fonts/Far_Homa.ttf"); final SharedPreferences sharedPreferences=getSharedPreferences("counters", Context.MODE_PRIVATE); final SharedPreferences.Editor editor=sharedPreferences.edit(); AlertDialog.Builder fBuilder=new AlertDialog.Builder(VowCountActivity.this); fBuilder.setMessage("choose"); fBuilder.setCancelable(false); fBuilder.setPositiveButton(firstا", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialogInterface, int i) { count =0; savedCount=0; click.setText("0"); click.setTypeface(Typeface.createFromAsset(getAssets(),"fonts/Far_Homa.ttf")); dialogInterface.cancel(); } }); fBuilder.setNegativeButton("countinue", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialogInterface, int i) { count = sharedPreferences.getInt("counter",savedCount); count_text=Integer.toString(count); click.setText(count_text); click.setTypeface(Typeface.createFromAsset(getAssets(), "fonts/Far_Homa.ttf")); dialogInterface.cancel(); } }); fBuilder.show(); click.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { count++; savedCount=count; count_text=Integer.toString(count); click.setText(count_text); click.setTypeface(typeface); editor.putInt("counter",savedCount).commit(); savedCount = sharedPreferences.getInt("savedCounter", count); } }); }you should use this code,istear of yoursL
public class CountActivity extends Activity { private Button click; private int count,savedCount; private String count_text; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.counting); click= (Button) findViewById(R.id.vow_counting); final Typeface typeface = Typeface.createFromAsset(getAssets(),"fonts/Far_Homa.ttf"); final SharedPreferences sharedPreferences=getSharedPreferences("counters", Context.MODE_PRIVATE); final SharedPreferences.Editor editor=sharedPreferences.edit(); AlertDialog.Builder fBuilder=new AlertDialog.Builder(VowCountActivity.this); fBuilder.setMessage("choose"); fBuilder.setCancelable(false); fBuilder.setPositiveButton(firstا", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialogInterface, int i) { count =0; savedCount=0; click.setText("0"); click.setTypeface(Typeface.createFromAsset(getAssets(),"fonts/Far_Homa.ttf")); dialogInterface.cancel(); } }); fBuilder.setNegativeButton("countinue", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialogInterface, int i) { count = sharedPreferences.getInt("counter",savedCount); count_text=Integer.toString(count); click.setText(count_text); click.setTypeface(Typeface.createFromAsset(getAssets(), "fonts/Far_Homa.ttf")); dialogInterface.cancel(); } }); fBuilder.show(); click.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { count++; savedCount=count; count_text=Integer.toString(count); click.setText(count_text); click.setTypeface(typeface); editor.putInt("counter",savedCount).commit(); savedCount = sharedPreferences.getInt("savedCounter", count); } }); }更多推荐
发布评论