
Android自定义View
xuzhb24
这个作者很懒,什么都没留下…
展开
-
Android自定义View(一)坐标系解读
首先,先认识一下Android的坐标系统,自定义View的时候需要非常清楚坐标系的正负方向,要知道Android系统中的坐标方向和数学中的坐标系方向是不一样的,Android中的屏幕坐标系如下图所示: Android的屏幕坐标系以屏幕左上角为原地(0,0),X轴和Y轴的正方向分别为向右和向下。 这里也说明一下getX/getY和getRawX/get...原创 2018-10-18 22:08:41 · 708 阅读 · 0 评论 -
Android自定义复合控件
在Android中,复合控件是非常常见的,下面以创建一个标题栏为例,讲解创建自定义复合控件的过程。 以下图为例:我们要创建一个标题栏,这个标题栏是由左边的Button、右边的Button以及中间的TextView复合而成的,而我们希望能够直接在这个自定义标题栏设置里面的Button和TextView的属性信息。 具体实现过程如下:1、首先在re...原创 2018-11-11 19:10:52 · 704 阅读 · 0 评论 -
Android自定义View(二)屏幕尺寸信息和单位转换
相关术语:屏幕大小:通常描述手机大小会用几寸来描述,如6.5寸手机,这里的屏幕大小实际指的是屏幕对角线的长度;分辨率:手机屏幕的像素点个数,如手机屏幕分辨率为1920x1080指的是宽有1080个像素点,高有1920个像素点;DPI:每英寸像素,由对角线的像素点个数除以屏幕大小(对角线长度)得到;px:像素,1px代表屏幕上一个物理的像素点,可以理解为绝对尺寸,在某个屏幕分辨率上显...原创 2019-03-20 22:56:33 · 1110 阅读 · 0 评论 -
Android自定义View概述
自定义View是Android开发中不可避开的一个重点,也是难点。一方面自定义View涉及到的的知识点较多,从基础的坐标、Paint和Canvas的使用到Drawable、动画,更复杂的可能还会涉及Shader以及混合模式Xfermode等等(当然可能不止如此);另一方面自定义View的过程比较复杂,要了解View的测量、布局、绘制流程,重写相应的方法。自己一直有个想法,想把自己在学...原创 2019-03-17 23:04:14 · 226 阅读 · 0 评论 -
Android自定义View(三)自定义属性AttributeSet
自定义View的时候通常需要提供一些自定义属性,自定义属性非常简单,只需要在res资源目录的values目录下创建一个attrs.xml的属性定义文件,然后在该文件中定义相应的属性,并在自定义View的构造函数中获取并设置自定义属性的默认值即可。 假设在attrs.xml中自定义如下属性: <declare-styleable name="Custo...原创 2019-04-20 20:40:58 · 4924 阅读 · 2 评论 -
Android自定义View(四)Paint的常用方法
Paint相当于Android中的画笔,Paint的主要功能包括如下:方法 方法说明 setAntiAlias(boolean aa) 设置画笔的锯齿效果 setColor(int color) 设置画笔的颜色 setARGB(int a, int r, int g, int b) 设置画笔的A、R、G、B值 setAlpha(int a) ...原创 2019-05-15 21:58:23 · 300 阅读 · 0 评论 -
Android自定义View(五)Canvas的常用方法
如果说Paint是Android中的画笔,那么Canvas相当于Android中的画布,Canvas的主要功能包括如下:方法 方法说明 drawPoint(x, y, paint) 绘制点 drawLine(startX, startY, stopX, stopY, paint) 绘制直线 drawLines(pts, paint) 绘制多条直线 ...原创 2019-06-23 14:14:28 · 179 阅读 · 0 评论