Android 成功发布的Runnable仅在父级无效时执行
我有时会遇到以下情况: 我调用View.postRunnable r,它返回true 调用android.os.Looper.myLooper.dump…,runnable似乎不在消息队列中 在主布局上调用invalidate(例如20秒后)后,将执行Runnable 这种情况只会时不时发生,在多台设备和多个Android版本上都会发生 问题似乎类似于和 有人能解释一下,在什么情况下,Runnable被发布,但还没有被执行吗?以及为什么它会在父级失效后执行 注意:使用runOnUiThread发布Runnable很好,但我不能使用它:我真正的问题是有时候OnClickListener没有被调用;这可以追溯到调用postperformClick in View.onTouchEvent 我假设我的视图层次结构处于某种奇怪的状态,但我一无所知。 我的视图是用代码创建的,大致包括 相对布局 列表视图 水平视图 MyOwnView 答案就在这里Android 成功发布的Runnable仅在父级无效时执行,android,android-listview,message-queue,runnable,Android,Android Listview,Message Queue,Runnable,我有时会遇到以下情况: 我调用View.postRunnable r,它返回true 调用android.os.Looper.myLooper.dump…,runnable似乎不在消息队列中 在主布局上调用invalidate(例如20秒后)后,将执行Runnable 这种情况只会时不时发生,在多台设备和多个Android版本上都会发生 问题似乎类似于和 有人能解释一下,在什么情况下,Runnable被发布,但还没有被执行吗?以及为什么它会在父级失效后执行 注意:使用runOnUiThread发
ListView不喜欢视图适配器。我注意到,当post没有立即执行时,view.hasWindowFocus==false。这有助于回答我的问题吗?