رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل با Runnable
#1
سلام خسته نباشید
من میخوام وقتی کاربر رودکمه کلیک کرد بعد از 150 ثانیه دوباره اتومات رو دکمه کلیک شه
کدی که استفاده میکنم:
final Runnable runnable = new Runnable() {
    public void run () {
        down3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
            }
        });
    };
};

final Handler handler = new Handler();
handler.postDelayed(runnable, 150000);

down3.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        handler.removeCallbacks(runnable);
    }
});

آیدی دکمه من down3 هست
کد مشکل داره؟!چون جواب نمیده لطفا راهنمایی کنید.
کد کامل پروژه به استاد شهرکی ارسال شد
پاسخ
تشکر شده توسط:
#2
میخواین یکبار انجام بشه یا چندبار؟ اگه میخواین یکبار انجام بشه این کد رو تست کنید:
final Runnable runnable = new Runnable() {
    @Override
    public void run () {
        // Action to execute on button click
    }
};
 
final Handler handler = new Handler();
 
down3.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        runnable.run();
        handler.postDelayed(runnable, 150000);
    }
});

اگه میخواین هر 150 ثانیه یکبار اجرا بشه، این کد رو استفاده کنید:
Executors.newSingleThreadScheduledExecutor().scheduleAtFixedRate(new Runnable() {
    @Override
    public void run() {
        runnable.run();
    }
}, 0, 150, TimeUnit.SECONDS);
پاسخ
تشکر شده توسط: meysam1366 , reza7z




کاربران در حال بازدید این موضوع: 1 مهمان