首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Android进阶基础系列
胡飞洋
创建于2021-05-29
订阅专栏
Android进阶基础系列:Handler、Window、View原理绘制、线程池、图片加载、动画 等~
等 30 人订阅
共7篇文章
创建于2021-05-29
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
胡飞洋
2年前
Android
Android进阶基础系列:Window和WindowManager ,全面理解!
Window是View的管理者,当我们说创建Window时,一方面指实例化这个管理者,一方面指 用WindowManager.addView()添加view,以view的形式来呈现Window这个概念。 实际就只有一句windowManager.addView(view, la…
6396
27
4
胡飞洋
2年前
Android
Android进阶基础系列:View的工作原理 全面理解!
ViewRoot对应ViewRootImpl类,是连接WindowManager和DecorView的纽带。View的三大流程是通过ViewRoot完成的。 在ActivityThread中,当Activity对象被创建完毕时,会将DecorView添加到Window中,同时会…
6722
68
2
胡飞洋
2年前
Android
Android进阶基础系列:Handler,Android消息机制全面掌握!
在任务执行的线程,使用Looper.prepare()来给线程创建Looper实例。 在任务执行的线程,创建Handler实例。 在任务执行的线程,使用Looper.loop()开启消息循环。 在任务发出的线程,使用Handler实例发送消息。 如下所示,点击按钮,在主线程发送…
2091
23
评论
胡飞洋
2年前
Android
Android进阶基础系列:Bitmap的加载和Cache
图片分辨率,可能不是原始图片的分辨率。例如 图片放在Res中不同dpi的文件夹中,分辨率是原始分辨率转换后的。比如放hdpi与放xhdpi,转换后的分辨率是不同的。转换后的分辨率=原始分辨率*(设备的 dpi / 目录对应的 dpi)。其他情况,如放在磁盘、文件、流等均按原分辨…
2747
22
评论
胡飞洋
2年前
Android
面试官:子线程 真的不能更新UI ?
一般情况,我们在子线程直接操作UI,没有用handler切到主线程,就会报这个错。 下面是具体代码,handleAddWindow()按在MainActivity 的onCreate中执行。 主要是:开了个子线程,然后添加了一个系统window,window中只有一个butto…
5902
36
17
胡飞洋
3年前
Android
Android进阶基础系列:Android中的动画详解
View动画的平移、缩放、旋转、透明度 分别对应 Animation的的4个子类:TranslateAnimation、ScaleAnimation、RotateAnimation、AlphaAnimation。View可以用xml定义、也可以用代码创建。推荐使用xml,可读性…
3050
6
1
胡飞洋
3年前
Android
Android进阶基础系列:Android的线程和线程池
AsyncTask是用来在线程池中处理异步任务,并可以把处理进度和结果发送到UI线程。 看到,首先使用主线程的Looper创建了InternalHandler实例。然后创建了WorkerRunnable的实例mWorker,call方法中看到调用了 doInBackground…
1714
9
评论
温馨提示
当前操作失败,如有疑问,可点击申诉