android - Handler postDelayed 无效。
迷茫
迷茫 2017-04-17 17:35:39
0
3
1368
        mHandler.postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        mHandler.removeCallbacksAndMessages(null);
                    }
                }, 500);
                
                
                
                 mHandler.removeCallbacksAndMessages(null); 用来移除所有消息,
                 
                 但是用handler.postdelayed 无效,
                 是用TimerTask 或者 Thread  来控制时 是可以生效的。
                 
                请问因为什么原因导致无效的呢?
                
              
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全員に返信(3)
左手右手慢动作

removeCallbacksAndMessages(null) の機能は何ですか?

パラメータが null の場合、すべてのコールバックとメッセージがクリアされます。
ソース コードを見ています。Message のコンストラクターは空であり、0 です。まだ実行されていないため、削除されます。

いいねを押す +0
小葫芦

すみません、なぜ無効なのでしょうか? mHandler.removeCallbacksAndMessages(null); が実行されていないためですか?

いいねを押す +0
伊谢尔伦

500 遅延後に自分の実行可能ファイルを削除するのは少し奇妙に感じます。
これを試すことができます

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート