2016-03-31 18 views
1

受け取った情報に基づいてイメージを更新するアンドロイドアプリケーションを作成しようとしています。私の主な活動のonCreateメソッドでは、次のコードを使用して、アプリケーションの実行中に絶えず更新しようとしています。現在、以下でマークした実行可能ファイル(太字または**)でエラーが発生しています。 「実行可能ファイルが初期化されていない可能性があります」と表示されます。私はこれを解決する方法を考えていた。実行可能な初期化エラー

+0

'this'を使う...この文脈では、' runnable'と同じ意味であるはずです...それはあなたのアクティビティクラスを意味する数行後に覚えておいてください! – Selvin

答えて

1
final int delayMs = 1000; 
final Handler handler = new Handler(); 
final Runnable runnable = new Runnable() { 
    @Override public void run() { 
     // Call your refresh method 
     Refresher(); 
     // Restart the timer 
     handler.postDelayed(**runnable**, delayMs); 
    } 
}; 
handler.postDelayed(runnable, delayMs); 

包含するクラスのメンバーとして代わりにそれが使用されるのと同じ方法で内部のローカル変数としてrunnableを定義します。

0

これで何が達成できるのかはっきりしません。ここにコードを追加できますか? ここで正確な質問に答えると、Runnableの実装で最終的な 'runnable'変数への参照を使用しようとしています。使用時に 'runnable'が初期化されているかどうかは不明です。

+0

これはコメントとして書かれているはずです。 –

関連する問題