2

実行できますか

handler.postDelayed(runnable,400)

Activityクラスから?

私はコントローラークラスを持っています。それをアダプターと見なします。そこで使えますHandlerか?

ブレークポイントを使用してアプリをデバッグしようとしましたが、コントロールが到達しません

handler.postDelayed(runnable,400)

誰でもこれに関して私を助けることができますか?

実際に私はOCRを使用しています。特定の一致が発生した場合は、自動的にメインのアクティビティに戻りたいと考えています。ルーパーだと思います。私もそれの写真をキャプチャする必要があります。そのためには、ハンドラーを使用する必要があります。

4

2 に答える 2

4

handler.postDelayed(runnable, 400)Activityクラスから実行できますか?

はい、できます。

AnyHandlerは、Thread(Activityまたは別のオブジェクトではなく) およびThreadのメッセージ キューに関連付けられています。によって処理されるキューへのHandlersポスト/プロセス Messagesおよびキューからのポスト/プロセス。RunnablesLooper

Handlerメイン スレッド内 (クラス内など) で を作成すると、実行中のループActivityにメッセージ およびRunnables( post()、などを使用) を投稿/送信します。ただし、デフォルトでは、最初とその後の呼び出しでスレッドを作成しない限り、スレッドはループを実行していません。postDelayed()sendMessage()Looper.prepare()Looper.loop()

バックグラウンド スレッドでHandler作成されたメッセージRunnablesがメインのスレッド キューにポストされる場合

ブレークポイントを使用してアプリをデバッグしようとしましたが、コントロールが到達しません。

コードロジックが「コントロール」に到達しないか、が処理できないように、handler準備とループを行わずにバックグラウンドスレッド内で が作成されていると思います。Looperrunnablehandler

于 2016-09-24T00:18:52.843 に答える