سوال در باره ی prefences
سلام . من دارم یک برنامه مینویسم که میخوام یک عدد از ادیت تکست بگیر و بیاد ببینه که ایا این مقدار از 0 بزرگتر است یا نه اگر بود ذخیره کند و دوباره دفعه ی بعد یک عدد دیگر بگیرد بیاد با مقداری که قبلا ثبت شده بود مقایسه کند که اگر بزرگتر بود دوباره ذخیره کنه به همین ترتیب تا اخر برای مثال : مثل ما عدد 5 را وارد میکنیم می بینم که 5 بزرگتر از0 است وبیاد مقدار 5 را ذخیره کنه و دفعه بعدی بیایم مقدار 7 رو بدیم که 7 از 5 بزرگتر است پس 7 رو دخیره کنیم وحالا این بار مقدار 6 رو بدیم که 6 بزرگتر از 7 نیست پس همون مقدار 7 رو ذخیره کند . در واقع میخواستم بدونم که چه جوری میشه یکه Best Score برای بازی نوشت لطفا راهنمایی کنید مرسی
اینجا یه نمونه ساده نوشتم به عنوان مثال، البته در صورتی که نمیخواید از کلاس Edit Text که به صورت پیشفرض برای preferences در نظر گرفته شده استفاده کنید.اگر هم قصد استفاده از همون رو دارید که کارتون آسونتره ، امیدوارم به کارتون بیاد.
private EditText edtTest;
private Button btnTest;
public static SharedPreferences preferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_games);
edtTest = (EditText) findViewById(R.id.edtTest);
btnTest = (Button) findViewById(R.id.btnTest);
btnTest.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
int gameScore = getGameScore();
preferences = PreferenceManager.getDefaultSharedPreferences(G.context);
int savedScore = preferences.getInt("Stored_Score", 0);
if (gameScore > savedScore) {
SharedPreferences.Editor editor = preferences.edit();
editor.putInt("Stored_Score", gameScore);
editor.commit();
Toast.makeText(G.context, "New Score saved ", Toast.LENGTH_SHORT).show();
} else {
edtTest.setText("" + savedScore);
Toast.makeText(G.context, "EditText value Changed to " + savedScore, Toast.LENGTH_LONG).show();
}
}
});
}
private int getGameScore() {
int Score = 0;
try {
Score = Integer.parseInt(edtTest.getText().toString());
}
catch (NumberFormatException e) {
e.printStackTrace();
}
return Score;
}
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .