Обновление фрагмента каждые 30 секунд

В настоящее время у меня есть фрагмент, который генерирует ImageView. Я нахожусь в поиске способа обновления изображения, которое генерируется каждые 30 секунд. ImageView использует другие функции, чтобы помочь сгенерировать его. Спасибо за любую помощь.

 ImageView imageView = (ImageView) rootView.findViewById(R.id.qrCode);
 try {
        Bitmap bitmap = encodeAsBitmap(STR);
        imageView.setImageBitmap(bitmap);
    } catch (WriterException e) {
        e.printStackTrace();
 }

2 ответа

Решение

Вы можете использовать Handler класс от android.os для периодических обновлений на что угодно.

Пример кода здесь:

final Handler refreshHandler = new Handler();
Runnable runnable = new Runnable() {
                @Override
                public void run() {
                    // do updates for imageview
                    refreshHandler.postDelayed(this, 30 * 1000);
                }
            };
refreshHandler.postDelayed(runnable, 30 * 1000);

Ну, вы можете использовать это для запуска любой задачи каждые 30 секунд.

Что-то вроде этого:

Timer timer = new Timer();
timer.schedule(new TimerTask(){
    @Override
    public void run(){
        Bitmap bitmap = encodeAsBitmap(STR);
        imageView.setImageBitmap(bitmap);
    }
}, 0, 30000);
Другие вопросы по тегам