بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

یک دکمه درست کنم که فقط 2 بار بشه روش گلیک کرد

مدیریت گفتگو
ali_jaha 10 سال پیش
آخرین تغییر: 10 سال پیش

با عرض سلام و خسته نباشید خدمت تمام اساتید

یک سوال داشتم ازتون و اونم اینکه :

چگونه می تونم یک دکمه درست کنم که وقتی روش کلیک کنیم

واسه بار اول بگه مثلا داخل یک toast  : واسه بار اول فشرده شد

واسه بار دوم بگه مثلا داخل یک toast  : واسه بار دوم فشرده شد

.

*** واسه بار سوم داخل یک Toast بنویسه : شما دیگر نمی توانید از این دکمه استفاده کنید

و بار های بعدی هم که روی دکمه کلیک بشه همین جمله رو بنویسه

.

و نکته : می خوام که اگه طرف از برنامه در اومد هم این کار  ذخیره شه و هر وقا دیگه ای هم روی دکمه کلیک کرد فقط اون کار دکمه برای بار سوم رو انجام بده .

.

((((( می دونم برای این کار باید از روش Preference استفاده کنم اما روش پیاده سازیش رو بلد نیستم می شه کمکم کنید و بگین چجوری می تونم این کار رو انجام بدم ))))))

نظرات

پاسخ‌ها 3

Amir 10 سال پیش

 
findViewById(R.id.btn).setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
Editor editor = preferences.edit();
int clicks = preferences.getInt("CLICKS", 0);

if (clicks < 3) {
editor.putInt("CLICKS", clicks + 1);
editor.commit();

Toast.makeText(getApplicationContext(), "سلام", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(getApplicationContext(), "شما بیشتر از 2 بار کلیک کرده اید", Toast.LENGTH_SHORT).show();
}
}
});

نظرات

ali_jaha 10 سال پیش
دست گلتون درد نکنه داداشم دقیقاااااااااااااااااااا همون چیزی بود که می خواستم یه نیا ممنون فقط . : چجوری می شه یه کاری کنم که مثلا بار اول بگه : Toast.makeText(getApplicationContext(), "سلام", Toast.LENGTH_SHORT).show(); بار دوم بگه : Toast.makeText(getApplicationContext(), "خوبی ", Toast.LENGTH_SHORT).show(); و از بار سوم به بعد بگه : Toast.makeText(getApplicationContext(), "شما بیشتر از 2 بار کلیک کرده اید", Toast.LENGTH_SHORT).show();
ali_jaha 10 سال پیش

دست گلتون درد نکنه داداشم دقیقاااااااااااااااااااا همون چیزی بود که می خواستم یه نیا ممنون.

فقط .

: چجوری می شه یه کاری کنم که مثلا بار اول بگه :

Toast.makeText(getApplicationContext(), "سلام", Toast.LENGTH_SHORT).show();

بار دوم بگه :

Toast.makeText(getApplicationContext(), "خوبی ", Toast.LENGTH_SHORT).show();

و از بار سوم به بعد بگه :

Toast.makeText(getApplicationContext(), "شما بیشتر از 2 بار کلیک کرده اید", Toast.LENGTH_SHORT).show();

نظرات

Amir 10 سال پیش

if (clicks < 3) {
if (clicks == 1) {

} else if (clicks == 2) {

}
editor.putInt("CLICKS", clicks + 1);
editor.commit();
} else {
Toast.makeText(getApplicationContext(), "شما بیشتر از 2 بار کلیک کرده اید", Toast.LENGTH_SHORT).show();
}

در ضمن برای اینکه نظم انجمن حفظ بشه بهتره که برای تشکر لایک کنید. ممنون

نظرات


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .