ساخت یک تایمر رندم در اندروید استودیو
دوستان عزیزم سلام
بنده تازه یادگیری اندروید رو شروع کردم و هنوز آماتور هستم!
در حال ساخت برنامه ای هستم که نیاز به یک تایمر رندم دارم، میخوام یه تایمر بذارم و این تایمر بیاد چند خط کد رو بین 4 ثانیه تا 12 ثانیه به اختیار خودش اجرا کنه ! یعنی به صورت رندم بین 4 تا 12 ثانیه کدهای مورد نظر بنده رو اجرا کنه ، مثلا یک بار در ثانیه 8ام اجرا بشه یک بار در ثانیه 5ام اجرا بشه و به همین شکل ادامه داشته باشه ...
قطعه کد زیر رو خودم نوشتم و درست هم کار میکنه فقط به صورت رندم نیست، میاد هر 4 ثانیه یک بار کدها رو اجرا میکنه اما من میخوام رندم بین 4 تا 12 ثانیه باشه !
fast_type.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
MainActivity.isAuto = true ;
timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
Handler hh = new Handler(Looper.getMainLooper());
hh.post(new Runnable() {
@Override
public void run() {
if(MainActivity.isAuto){
frag_main_follow_follow.performClick();
}else {
MainActivity.isAuto = false ;
timer.cancel();
}
}
});
}
}, 0, 4000);
alert_auto_follow.dismiss();
}
});
تنها کافیت که شما بجای 4 هزار میلی ثانیه به اون یک مقدار اینتیجر پاس بدید ، پس بجای اون 4000 میلی ثانیه بنویسید مثلاً : randNum
اما این randNum چی هست ؟ توی کد زیر مشخصه ، یک مقدار اینتیجیری که خروجی اون بین 4 هزار تا 12 هزار هست که وقتی به جای میلی ثانیه قرار میدیم ، مقداری کاملا تصادفی برامون میده بین 4 هزار میلی ثانیه و 12 هزار میلی ثانیه ( یعنی 4 تا 12 ثانیه ) :
int randNum = (int) ((Math.floor(Math.random() * 8)) + 5) * 1000 ;
بصوتر کلی برای تولید یک عدد تصادفی از : Math.random
و بـــرای گــرفت عـدد رنـد ( کف گیری ) از : Math.floor
استفاده میکنیم .
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .