![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
View体系与自定义View
文章平均质量分 70
m0_46211029
这个作者很懒,什么都没留下…
展开
-
自定义View案例之类似于Viewpager的可左右滑动的布局
二、继承ViewGroup自定义ViewGroup的过程相对复杂一些,因为除了要对自身的大小和位置进行测量之外,还需要对子View的测量参数负责。案例实现一个类似于Viewpager的可左右滑动的布局。package com.example.customview.view;import android.content.Context;import android.util.AttributeSet;import android.view.MotionEvent;import android原创 2021-01-08 16:01:24 · 412 阅读 · 0 评论 -
自定义View案例之自定义组合控件
一、概念自定义组合控件就是多个控件组合起来成为一个新的控件二、实现方式原创 2021-01-05 10:02:54 · 113 阅读 · 0 评论 -
自定义View案例之无效的Text、自定义时钟
一、继承系统控件的自定义View1、概念继承控件的意思就是,我们并不需要自己重头去实现一个控件,只需要去继承一个现有的控件,然后在这个控件上增加一些新的功能,就可以形成一个自定义的控件了。这种自定义控件的特点就是不仅能够按照我们的需求加入相应的功能,还可以保留原生控件的所有功能。2、案例继承TextView实现一个无效的TextViewpublic class InvalidTextView extends TextView { private Paint paint; publ原创 2020-12-10 11:10:16 · 167 阅读 · 0 评论 -
自定义View介绍及自定义属性
一、构造函数共有4个,自定义View必须重写至少一个构造函数public class MyView extends View { /** * 在java代码里new的时候会用到 * @param context */ public MyView(Context context) { super(context); } /** * 在xml布局文件中使用时自动调用 * @param context原创 2020-11-26 14:12:15 · 329 阅读 · 0 评论 -
View的事件分发机制
一、分发的核心方法方法作用调用时刻dispatchTouchEvent()传递点击事件点击事件传递给当前VIew时,该方法被调用onInterceptTouchEvent()判断是否拦截某个事件(只存在于ViewGroup)ViewGroup的dispatchTouchEvent()的内部调用onTouchEvent()处理点击事件dispatchTouchEvent()的内部调用二、Activity的事件分发当一个点击事件发生时,事件最先传到Acti原创 2020-11-24 14:22:56 · 103 阅读 · 0 评论 -
View坐标系及滑动
看《Android进阶之光》所做笔记一、坐标系Android系统中有两种坐标系,分别为Android坐标系和View坐标系。1、Android坐标系左上角为(0,0),右为x轴正方向,下为y轴正方向2、View坐标系1)View自身的坐标通过如下方法获得View到其父控件(ViewGroup)的距离。getTop():View自身顶边到其父布局顶边的距离。getLeft():View自身左边到其父布局左边的距离。getRight():View自身右边到其父布局左边的距离。getB原创 2020-11-20 15:08:23 · 159 阅读 · 0 评论