インターフェイスを設定する別のクラスからオブジェクトのパラメーターを適切に設定しています。今、私は同じことをする必要がありますが、タイマーによって遅れています. そのために、適切に呼び出されるタイマー タスクを使用していますが、別のアクティビティからパラメーターを設定する必要があるときにクラッシュします。それに到達する方法は?
TimerTask task = new TimerTask() {
public void run() {
anotherClass.aBridge.button_back.setVisibility(View.INVISIBLE); //working fine outside timer
}
};
Timer timer = new Timer();
timer.schedule(task, 5000);
logcat エラー:
10-05 12:26:58.083: E/AndroidRuntime(9815): FATAL EXCEPTION: Timer-0
10-05 12:26:58.083: E/AndroidRuntime(9815): android.view.ViewRoot$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
10-05 12:26:58.083: E/AndroidRuntime(9815): at android.view.ViewRoot.checkThread(ViewRoot.java:2990)
10-05 12:26:58.083: E/AndroidRuntime(9815): at android.view.ViewRoot.invalidateChild(ViewRoot.java:663)
10-05 12:26:58.083: E/AndroidRuntime(9815): at android.view.ViewRoot.invalidateChildInParent(ViewRoot.java:689)
10-05 12:26:58.083: E/AndroidRuntime(9815): at android.view.ViewGroup.invalidateChild(ViewGroup.java:2604)
10-05 12:26:58.083: E/AndroidRuntime(9815): at android.view.View.invalidate(View.java:5374)
10-05 12:26:58.083: E/AndroidRuntime(9815): at android.view.View.setFlags(View.java:4723)
10-05 12:26:58.083: E/AndroidRuntime(9815): at android.view.View.setVisibility(View.java:3183)
10-05 12:26:58.083: E/AndroidRuntime(9815): at webPush$6.run(webPush.java:274)
10-05 12:26:58.083: E/AndroidRuntime(9815): at java.util.Timer$TimerImpl.run(Timer.java:284)