自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 Android事件分发之ViewGroup分发事件

Android事件分发之ViewGroup当事件传递到ViewGroup之后会调用ViewGroup的dispatchTouchEvent方法,这边文章我打算按照事件的类型和是否拦截来阐述事件在ViewGroup中是怎么处理的,因为我觉得只有说清楚每种类型的事件分别会怎么处理,才会让你对事件分发有一个清晰的认识.当手指触摸屏幕到离开屏幕会触发哪些类型的事件呢?平时可能我们听的最多的就是有MotionEvent.ACTION_DOWN,MotionEvent.ACTION_MOVE和MotionEvent.

2021-08-13 11:11:50 181

原创 Android事件分发机制

Android事件分发机制相信有很多Android初学者提到事件分发机制时心里都不踏实,大概知道事件最先传递Activity,再传递到顶层布局,然后再经过由外向内的层层传播最终将事件传递给最终的view,大概知道事件分发中涉及到的有分发方法,有拦截方法,有事件处理方法,至于他们之间的调用细节就感觉很复杂而不想深究了,如果是这样的,当我们遇到相关问题的话就很难受了,所以下面我将带着害怕事件分发机制的你捋一捋这一些逻辑,让你心里有底。首先,我们看看ActivityThread中启动Acitivity的方法p

2021-08-11 17:47:32 294

原创 View的位置参数

View的位置参数在日常开发过程中,我们会遇到一些关于View的一些位置参数,包括 mLeft ,mTop ,mRight,mBottom,x,y,translationX,translationY。他们各自代表什么含义呢?如果不搞清楚他们之间的关系,有时候总是被这些参数搞得云里雾里,下面我们就来说一说这些参数。如上图所示,外层红色区域为父控件,内部蓝色区域为子控件,mLeft,mTop,mRight,mBottom等4个位置参数都是相对于View的父控件而言的。由上图我们可以看清楚了mLeft ,

2021-08-09 18:06:14 187

原创 View 绘制的三大流程之一:测量

View 绘制的三大流程之一:测量在我们的日常生活中,当我们想要画一幅画的时候,我们首先要考虑这幅画里面要画哪些元素,比如一幅田园生活画里面有房子,有树木,有田野,有小狗,有山。我们脑海里面首先要规划好其中每一种元素应该按比例画多大,每个元素应该画在画布的什么位置等。在Android系统中,View的绘制过程其实也是一样的道理,View从布局文件中声明或者通过代码状态创建到完全显示在咱们眼前,就需要系统帮我们把View在屏幕上“画”出来,但是在“画”这个动作之前,系统就需要知道要怎么画。比如针对一个Act

2021-08-09 15:20:16 70

原创 Java反射值getGenericSuperClass( )

源码:/** * Returns the {@code Type} representing the direct superclass of * the entity (class, interface, primitive type or void) represented by * this {@code Class}. * * <p>If the superclass is a parameterized type, the {@cod

2020-08-12 16:06:34 202

原创 Java反射访问属性

反射访问字段对于任何一个Object实例,只要我们获取了JVM中与之对应的Class实例,就可以通过该实例获取到该Object实例的一切信息。Class类提供了一下几个方法来获取字段:Field getField(String name):通过字段名获取public修饰的字段(包括父类继承的字段)Field getDeclaredField(String name):通过字段名获取当前类中的字段(不包括父类)Field[] getFields():获取所有public修饰的字段(包括父类)Fi

2020-08-11 17:06:27 156

原创 Git命令新建本地分支并推送到远程仓库

git命令新建本地分支并推送到远程仓库1.切换到新分支的基础分支(如:master)。git checkout master 2.使用git checkout -b “新分支名称”(eg:newBranchName) 命令创建新分支并切换到新分支。git checkout -b newBranchName 3.使用git push --set-upstream origin “远程分支名”(eg:remoteNewBranchName)将本地分支推送到远程仓库。git push --set

2020-08-11 15:58:32 765

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除