رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل با Runnable
#1
سلام خسته نباشید
من میخوام وقتی کاربر رودکمه کلیک کرد بعد از 150 ثانیه دوباره اتومات رو دکمه کلیک شه
کدی که استفاده میکنم:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
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
میخواین یکبار انجام بشه یا چندبار؟ اگه میخواین یکبار انجام بشه این کد رو تست کنید:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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 ثانیه یکبار اجرا بشه، این کد رو استفاده کنید:
1
2
3
4
5
6
Executors.newSingleThreadScheduledExecutor().scheduleAtFixedRate(new Runnable() {
    @Override
    public void run() {
        runnable.run();
    }
}, 0, 150, TimeUnit.SECONDS);
پاسخ
تشکر شده توسط: meysam1366 , reza7z




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