当前位置: 首页 > 面试题库 >

Android Handler四大组件?

华章横
2023-03-14
本文向大家介绍Android Handler四大组件?相关面试题,主要包含被问及Android Handler四大组件?时的应答技巧和注意事项,需要的朋友参考一下

Message

Message是在线程之间传递的消息,它可以在内部携带少量的信息,用于在不同线程之间交换数据。 例:Message的what字段、arg1字段、arg2字段来携带整型数据,obj字段携带一个Object对象。

Handler

处理者,它主要用来发送和处理消息。发送消息一般是使用Handler的sendMessage()方法,消息经过处理后,最终传递到Handler的handlerMessage()方法中。

MessageQueue

消息队列,它主要用来存放所有通过Handler发送的消息,这部分消息会一直存在于消息队列中,等待被处理。注意:每个线程中只会有一个MessageQueue对象。

Looper

是每个线程中MessageQueue的管家,调用Looper的loop()方法后,就会进入到一个无限循环当中,每当发现MessageQueue中存在一条消息,就会将其取出传递到Handler的handleMessage()方法当中。

注意:每个线程中只会有一个Looper对象。

异步消息处理流程:

  1. 在主线程当中创建一个Handler对象;
  2. 重写handleMessage()方法;
  3. 当子线程需要进行UI操作时,创建一个Message对象,并通过Handler将消息发送出去;
  4. 消息添加到MessageQueue的队列中等待被处理;
  5. Looper在MessageQueue中取出待处理消息,发回Handler的handleMessage()方法中。

【由于Handler是在主线程中创建的,因此我们的handleMessage()方法中的代码也会在主线程中执行,避免了异常的产生】

 类似资料:
  • 本文向大家介绍Android 四大组件是什么?相关面试题,主要包含被问及Android 四大组件是什么?时的应答技巧和注意事项,需要的朋友参考一下 Activity【活动】:用于表现功能。 Service【服务】:后台运行服务,不提供界面呈现。 BroadcastReceiver【广播接收器】:用来接收广播。 Content Provider【内容提供商】:支持在多个应用中存储和读取数据,相当于数

  • 主要内容:一、Spring Boot Starter,二、Spring Boot Autoconfigure,三、Spring Boot CLI,四、Spring Boot actuator四大组件分别是:starter, autoconfigure, CLI 以及actuator。 一、Spring Boot Starter 1.1 Starter的应用示例 在我们的Spring Boot项目种的POM文件中总会看到这两种依赖: 这就是spring boot的四大组件之一的starter。 总

  • 和C语言一样,Go 语言中也有四大跳转语句,分别是 return、break、continue、goto break 语句 Go 语言中的 break 语句可以用于,立即跳出 switch、for 和 select 但不同的是 Go 语言中的 break 语句可以指定标签 package main import "fmt" func main() { for i:=0; i<10; i++

  • 数 组 数组在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。 本章介绍数值数组和字符数组,其余的在以后各章陆续介绍。数组类型说明

  • 使用指南 - 数据报告 - 优化分析 - 网站安全指数四大检测服务及四大维度详细介绍 网站安全指数基于百度获取的网站数据,通过实时安全、30天内历史安全、网站环境、攻击风险四大维度五个等级对目标网站进行综合分析和评价。存在风险的网站将被搜索、浏览器等风险提示或降权。 四大检测服务: 网站安全指数包含以下四大检测服务: 1、安全威胁检测:是一种轻量级的互联网域名和IP的指纹检测服务。通过检出的域名或

  • 本文向大家介绍Vue.js第四天学习笔记(组件),包括了Vue.js第四天学习笔记(组件)的使用技巧和注意事项,需要的朋友参考一下 在这篇文章之前小颖分享过小颖自己写的组件:Vue.js组件tabs实现选项卡切换效果和Tree升级版(实现省市多级联动) 先给大家看下小颖写了一个简单的组件示例: 组件: 调用组件: 在小颖写的组件中,小颖把创建组件时,组件的大部分属性都加了相应注释,大家看了要是还有