sendMessageAtTime与sendEmptyMessageDelayed的去呗
时间: 2024-08-16 13:01:54 浏览: 25
`sendMessageAtTime` 和 `sendEmptyMessageDelayed` 都是 Android 库中的方法,用于处理消息发送操作。它们通常用于Android的消息传递机制,如Handler、Looper和MessageQueue。
1. `sendMessageAtTime(Message msg, long uptimeMillis)`:这个方法用于发送一个消息到消息队列,指定在某个特定的时间点(uptimeMillis表示自系统启动以来的毫秒数)开始处理该消息。这常用于精确控制消息的执行顺序,比如在动画完成后执行回调。
2. `sendEmptyMessageDelayed(int what, long delayMillis)`:这是一个简化版的版本,它发送一个空的消息(msg.obj == null),并在指定延迟(delayMillis)后将该消息放入消息队列。这里的`what`通常是消息的一个标识符,用来匹配对应的消息处理器。这个方法适用于需要在未来某个时间点触发一次回调的情况。
相关问题
handler.sendMessageAtTime
`handler.sendMessageAtTime()` 是 Android 中的一个方法,它可以在指定的时间将一条消息发送到与该 Handler 关联的消息队列中。该方法的参数包括待发送的消息、发送时间和延迟时间,其中发送时间和延迟时间必须指定其中之一。
如果指定了发送时间,则该消息将在指定的时间被发送到消息队列中。如果指定了延迟时间,则消息将在当前时间加上延迟时间后发送到消息队列中。消息发送到队列后,将在 Looper 所处的线程上处理该消息。
阅读全文