This commit is contained in:
sloop
2016-03-17 12:45:09 +08:00
parent 56041336a0
commit 95965d6cd9

View File

@@ -8,7 +8,7 @@
## 一.自定义View分类
**我将自定义View分为了两类(GcsSloop个人分类法非官方)**
**我将自定义View分为了两类(sloop个人分类法非官方)**
### 1.自定义ViewGroup
@@ -41,7 +41,7 @@ View的构造函数有四种重载分别如下:
```
可以看出关于View构造函数的参数有多有少先排除几个不常用的留下常用的再研究。
<b>有四个参数的构造函数在API21的时候才添加上我一般不使用,暂不考虑。</b>
**有四个参数的构造函数在API21的时候才添加上暂不考虑。**
有三个参数的构造函数中第三个参数是默认的Style这里的默认的Style是指它在当前Application或Activity所用的Theme中的默认Style且只有在明确调用的时候才会生效以系统中的ImageButton为例说明
``` java
@@ -55,9 +55,9 @@ View的构造函数有四种重载分别如下:
this(context, attrs, defStyleAttr, 0);
}
```
<b>注意即使你在View中使用了Style这个属性也不会调用三个参数的构造函数所调用的依旧是两个参数的构造函数。</b>
**注意即使你在View中使用了Style这个属性也不会调用三个参数的构造函数所调用的依旧是两个参数的构造函数。**
<b>由于三个参数的构造函数第三个参数一般不用,暂不考虑,第三个参数的具体用法会在以后用到的时候详细介绍。</b>
**由于三个参数的构造函数第三个参数一般不用,暂不考虑,第三个参数的具体用法会在以后用到的时候详细介绍。**
排除了两个之后,只剩下一个参数和两个参数的构造函数,他们的详情如下:
``` java
@@ -67,12 +67,12 @@ View的构造函数有四种重载分别如下:
//一般在layout文件中使用的时候会调用关于它的所有属性(包括自定义属性)都会包含在attrs中传递进来。
public void SloopView(Context context, AttributeSet attrs) {}
```
以下方法调用的是<b>一个参数</b>的构造函数:
**以下方法调用的是一个参数的构造函数:**
``` java
//在Avtivity中
SloopView view = new SloopView(this);
```
以下方法调用的是<b>两个参数</b>的构造函数:
**以下方法调用的是<b>两个参数</b>的构造函数:**
``` xml
//在layout文件中 - 格式为: 包名.View名
<com.sloop.study.SloopView