
Android UI 开发
文章平均质量分 84
本专栏主要介绍安卓 UI 开发过程中的遇到的问题及解决方法,设计安卓常用组件使用方法、布局优化、事件分发原理、View 绘制流程等。
陈蒙_
大前端领域优快云博客专家,中科院计算机专业硕士,拥有11项发明专利。正在撰写《对比Java学Kotlin》一书。
展开
-
Activity 转场动画踩坑
目标效果实现方案Activity#overridePendingTransition()android:windowAnimationStyle参考文章目标效果页面出现的效果是自下向上滑入,消失的效果是自上向下滑出,时长、速度未知。实现方案为表述方便,我们假设由 Activity A 打开 Activity B。Activity#over...原创 2018-03-08 16:51:43 · 4053 阅读 · 0 评论 -
安卓帧渲染数据获取方式小结
两种策略四种方式Choreographer$FrameCallback从 16ms 说起GraphicsBinderProfile GPUFrameMetrics通过 onDraw() 获取帧数据性能指标更多好文首先解释一下文章标题中的“帧渲染数据”。 “帧渲染数据”是指,完成渲染一帧的耗时。这是计算帧率的基础数据。截止到 8.0 系统,安卓原生提...原创 2017-09-17 09:51:41 · 9037 阅读 · 0 评论 -
对两个事件分发案例的探究
在开发中,遇到两个事件分发方面的应用案例,实际运行与我的预期不符。特意做了实验,探究原因,现记录如下,以备日后查阅。原创 2017-07-08 17:23:17 · 649 阅读 · 0 评论 -
Activity 跳转时的生命周期流程
本文探究两个 Activity 相互跳转时生命周期方法的执行顺序。原创 2017-07-07 15:23:31 · 1430 阅读 · 0 评论 -
给 SwitchCompat 设置颜色的方法
本文介绍 SwitchCompat 控件设置颜色的方法。原创 2017-07-05 20:01:04 · 8545 阅读 · 0 评论 -
安卓监听剪切复制粘贴事件实例
本文的剪切复制粘贴事件只针对文本,URI 和 intent 不在讨论范围内。实例代码实现了2个功能:(1)监听剪切复制粘贴事件;(2)获取剪切复制或粘贴的文本;原创 2017-04-13 14:51:40 · 24796 阅读 · 2 评论 -
Activity#finish() 对其生命周期的影响
如果在 Activity#onCreate() 方法中调用 finish() 方法,其生命周期会发生什么变化?原创 2017-06-26 15:29:36 · 3928 阅读 · 0 评论 -
Activity 显式和隐式跳转利弊对比
本文对比 Activity 的两种跳转方式的利弊。原创 2017-03-08 15:46:02 · 4819 阅读 · 0 评论 -
TextView 文本过长时自动打点
需求如下:一行有两个文本区域,二者间距至少30px;第二个全部显示,第一个过长时打点显示;是用纯 xml 布局实现该需求。原创 2016-03-24 20:06:45 · 6733 阅读 · 0 评论 -
理解 VSync
本文介绍 VSync 产生的原因及其作用。VSync 是啥VSync 有啥作用单缓存双重缓存Double Buffer三重缓存Triple Buffer更多文章前言本文讲解 VSync 产生的原因及其作用。内容涉及如下方面:帧率 vs 屏幕刷新频率;单缓存,双重缓冲,三重缓存及各自的优缺点;VSync 的工作过程;帧率 vs 屏幕.........原创 2016-07-11 17:49:47 · 39096 阅读 · 17 评论 -
Choreographer——一个舞蹈指挥家的日常
本文从宏观层面讲述 Choreographer 这个类的作用。原创 2016-08-09 15:58:52 · 1362 阅读 · 0 评论 -
Style 和 Theme 的异同
本文讲解安卓中 Style 和 Theme 的联系和区别,以及应用。原创 2016-09-12 20:15:10 · 1136 阅读 · 0 评论 -
麻辣烫与安卓主线程工作原理
首先,我们去店里点一碗麻辣烫店。 然后类比点餐的过程,讲解 Active Object 设计模式。 最后讨论 Active Object 模式在安卓主线程中的应用。一碗热腾腾的麻辣烫原创 2016-12-17 18:46:18 · 723 阅读 · 0 评论 -
自定义控件实践——单选/多选文本标签流
本文在自定义流式布局的基础上,实现了具有单选和多选功能的文本标签流。原创 2017-01-06 17:31:34 · 968 阅读 · 0 评论 -
安卓获取帧渲染耗时的方法
TaktAndroidDevMetricsAndroidPerformanceMonitorADB Monitor | GPU获取最近 120 帧的绘制数据,adb shell dumpsys gfxinfo yourAppsProcess (reset/framestats),将数据复制到 txt 文件中,excel - data - 文本hierarchyviewer,用命令行打开原创 2017-01-16 10:04:26 · 4322 阅读 · 2 评论 -
TextView 高级教程
光看题目,估计有人已经忍不住吐槽了:尼玛,装X,TextView 这么简单的控件,还有什么高级用法吗?放在以前,我也会这么想,但是随着开发经验的积累,我愈发觉得 TextView 简直就是一座宝藏,里面有很多宝贝值得研究。原创 2016-10-06 11:01:16 · 9203 阅读 · 13 评论 -
自定义控件实践——流式布局
在本文中,我们将实现一个自定义控件,类似水平方向的 LinearLayout,区别是:当水平方向上空间不足时,子 View 自动从下一行开始放置。这种控件有个统称:流式布局(FlowLayout)。原创 2016-09-05 19:40:47 · 846 阅读 · 0 评论 -
安卓中计算 TextView 的宽高、打点
背景假如我们有一个 TextView 实例:TextView textView = new TextView(getContext());textView.setText("i love u...");textView.setTextColor(getResources().getColor(R.color.colorAccent));宽度计算这个 TextView 中...原创 2016-06-20 21:19:11 · 7129 阅读 · 0 评论 -
到底是 Activity 被回收了还是进程被杀死了?
内存不足时,到底是 Activity 被回收了呢,还是进程被杀死了呢,还是二者都出现了呢?原创 2016-08-12 19:36:08 · 8187 阅读 · 5 评论 -
获得 View 宽高的几种方法
- 介绍获得 View 宽高的几种方法;- 说明 View.post(Runnable) 的工作原理,但不推荐使用该方法。原创 2016-08-09 09:44:17 · 3298 阅读 · 0 评论 -
安卓 Data Binding 使用方法总结(妹妹篇)
前言本文是《 安卓 Data Binding 使用方法总结(姐姐篇)》(写于 Google I/O 2016 之前)的姊妹篇,参考视频 Advanced Data Binding - Google I/O 2016 后经实践后写成(冒死建议观看视频)。原创 2016-06-15 14:38:47 · 8184 阅读 · 1 评论 -
安卓 Data Binding 使用方法总结(姐姐篇)
在项目中使用到了 Data Binding,总结使用经验后写成本文。 本文涉及安卓自带框架 DataBinding 的基础使用方法,适合初次接触 Data Binding 的同学阅读。原创 2016-05-24 22:53:50 · 23348 阅读 · 6 评论 -
浅尝微信朋友圈的细节之美
今天,从一个安卓开发工程师的视角,来欣赏下微信朋友圈在 UI 和 交互设计上的精雕细琢之处。纯属个人观点,不喜勿喷。原创 2016-04-03 10:55:13 · 1416 阅读 · 0 评论 -
Android 多页面左右滑动
通过左右滑动屏幕来切换页面,有4种方式:(0) 使用ScrollLayout;(1) 使用动画;(2) Activity 实现 OnTouchListener 和 OnGestureListener 接口;(3) 使用 ViewPager;本文将对上述各个方式逐一介绍。原创 2014-09-07 16:11:57 · 10797 阅读 · 0 评论 -
Android PopupWindow 的显示位置
本文在上一篇博客 Android PopupWindow 仿微信点赞和评论弹出框 中例子的基础上,探讨 showAsDropDown() 和 showAtLocation() 参数的作用。1. Android 坐标系Android 坐标系是以左上角为原点,水平向右是 x 轴,竖直向下是 y 轴。showAsDropDown() 中的坐标是相对于anchor的偏移值,而 showAtLo原创 2015-09-04 09:59:15 · 14743 阅读 · 3 评论 -
Android 仿微信点赞和评论弹出框
本文简单模仿微信朋友圈的点赞和评论弹出框,布局等细节请忽略,着重实现弹出框、发评论,及弹出位置的控制。原创 2015-12-16 11:25:04 · 50522 阅读 · 30 评论 -
浅尝安卓事件分发机制
本文简单介绍安卓应用层的事件分发机制,并辅以案例进行分析。原创 2016-01-25 09:50:20 · 4039 阅读 · 3 评论 -
安卓 Notification 使用方法小结
本文简单介绍安卓 Notification 的用法,并简单对比 5.0 前后 Notification 的变化和处理方法。原创 2016-02-24 17:59:03 · 13776 阅读 · 6 评论 -
安卓 TextView 七宗罪
本文探究 TextView 存在的几个坑,以及其中几个坑的解决方法。原创 2016-04-01 17:51:14 · 16052 阅读 · 17 评论