Android - как выполнять тост каждые 10 секунд, используя ScheduledExecutorService? - PullRequest
4 голосов
/ 25 февраля 2012

журнал "привет" появляется только один раз, а тост вообще не появляется ..

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    ScheduledExecutorService scheduler =
            Executors.newSingleThreadScheduledExecutor();
    scheduler.scheduleAtFixedRate(new Runnable() {

        public void run() {
            Log.i("hello", "world");
            Toast.makeText(getApplicationContext(), "It works", Toast.LENGTH_SHORT).show();
            // TODO Auto-generated method stub

        }
    }, 10, 10, TimeUnit.SECONDS); 

}

1 Ответ

9 голосов
/ 25 февраля 2012

Попробуйте

        scheduler.scheduleAtFixedRate(new Runnable() {

        public void run() {
            Log.i("hello", "world");
            runOnUiThread(new Runnable() {
                public void run() {
                    Toast.makeText(getApplicationContext(), "It works", Toast.LENGTH_SHORT).show();
                }
            });

        }
    }, 10, 10, TimeUnit.SECONDS);
...