java使用回调还是Android中使用处理程序? 2 月 Questions & Answers 1347 我在学习Android的BluetoothChat sample app,注意到他们正在使用处理程序向UI发送更新,如图here。我想知道为什么他们不喜欢使用回调/侦听器向UI发送更新
# 2 楼答案 猜猜看。 Handler是一个完美的异步解决方案。只需将消息发布到MessageQueue,处理程序(UI线程)就会从中获取消息。它可以降低模块的复杂性 回调是另一种解决方案,但根据更新用户界面的不同而复杂
# 1 楼答案
我猜是因为Handler在创建它的线程上发布消息。如果使用回调,则必须注意调用runOnUiThread(Runnable)以执行任何类型的UI更改
# 2 楼答案
猜猜看。 Handler是一个完美的异步解决方案。只需将消息发布到MessageQueue,处理程序(UI线程)就会从中获取消息。它可以降低模块的复杂性
回调是另一种解决方案,但根据更新用户界面的不同而复杂