13

ボタンをクリックするたびに、特定の一連の画像がめくられる単純なボタン実装のウィジェットがあります。ボタンをクリックせずに 5 秒ごとに反転させたい場合は、どうすればよいですか?

4

4 に答える 4

4

AlarmManager を使用して、Update インテントをレシーバーに送信するアラームをトリガーします。

ここに例を示す良いリンクがあります。

http://www.parallelrealities.co.uk/2011/09/using-alarmmanager-for-updating-android.html

  1. ウィジェットが起動したら、ウィジェットサービスで、5秒後に次のアラームを設定します。
  2. アラームは、5 秒後にサービスをトリガーする PendingIntent を送信する必要があります。
  3. サービスの onStartCommand で、ウィジェット更新サービスをトリガーします。
  4. 5 秒後に次のアラームを再設定します。

注:しかし、5 秒は本当に速すぎます。バックグラウンドで他に何をしているかにもよりますが、バッテリーはすぐに消耗します。更新頻度を下げることを検討してください。

于 2013-06-11T07:14:51.263 に答える
1
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
    public void run() {
        runOnUiThread(new Runnable() {
            public void run() {
                imageView.setImageBitmap(bitmap);
            }
        });
    }
}, 5000, 5000);

最初の変更は 5 秒後に発生します。

于 2013-05-31T23:52:16.133 に答える