在学习android过程中有很多东西要学,学的东西多了,就容易记不住。特别是一些步骤繁多,使用少的一些东西。那么我们就要多总结归纳,从中找出一些规律,总结出一般步骤,并且记下来!那样我们以后用到的时候就会非常快的回忆起来。那么我马上要做的Android实现自定义view以及自定义属性的一般步骤,也是我自己在学习过程中总结出来的,很多都是个人观点,靠自己的经验总结,有不对或者有需要改进的地方,还请各位兄弟姐妹多多指点。我用的例子是我学习的教程例子,我自己又加了点东西,还不错,最后会给出源码供下载。话不多说,现在开始!

1、首先确定自定义的View的一些属性,例如我这个实例是流星下落的画面,分析出流星有 数量 长度 颜色 颜色是否随机等特定(这些属性可以根据自己具体需求添加添加),然后就要在values文件下新建一个attrs.xml,如果有了,就不必要添加如下:

2、然后打开attrs.xml在里面添加自定义的一些属性,如下:

Android实现自定义View的自定义属性的一般步骤_第1张图片

declare-styleable 后面的这个name属性非常重要,因为在java代码中要用到,就是给你的自定义属性的集合取个名字,<attr />标签就是每个属性,attr后面跟的name 是每个标签的取的名字,尽量通俗易懂,format后面的就是这个属性的类型,就是你的属性是int类型,还是boolean类型之类的,关于自定义属性类型总结,请移步到这篇博客自定义属性汇总 ;

3、自定义属性完成之后,就可以在布局文件的中,使用了。首先,先设置一个自定义的Veiw ,找到你自定义View的全称如下:

把它复制一下,粘贴到布局文件中,并设置想要的属性,这里看到后面4个属性是自己定义的,并且设置了相应的值, 这里的值的格式就是在第2步中设置的。如下:

有人会问 rain: 是怎么来的,在使用自定属性之前,还有重要的一步要做,那就是在顶部定义命名空间,这里不详细介绍,还请各位有兴趣的百度一下。看看是怎么做的就行了,如下:

这一行 xmlns:rain="http://schemas.android.com/apk/res/com.my.rainanimation" 就是我们自定义的命名空间,其实格式就是 这样的: xmls: 自己定义一个命名空间的名称 ="http://schemas.android.com/apk/res/ 自己工程的包名"

在这里就是 自己定义一个命名空间的名称=rain, 自己工程的包名=com.my.rainanimation

有些时候可能记不住自己工程的包名,可以到 AndroidManifest.xml中去找,在下图的这个位置 package后面的双引号中的就是:

4、在布局文件中我们设置了我们自己的属性后,那么我们接下来就要在java代码中实现了这些属性。如下图:

Android实现自定义View的自定义属性的一般步骤_第2张图片

首先定义出自己的自定义的属性,然后在代码中从第2步中解析出这些属性并使用,如下图:

Android实现自定义View的自定义属性的一般步骤_第3张图片

把鼠标放在obtainStyledAttributes可以看到它的解释,如下图:

意思是说在这个上下文主题中检索样式属性信息。从attrs中,解锁出RainView中的属性信息,而这个RainView就是第2步中定义的属性集合的名称,从这个集合中分别取出属性进行检索。

rainNum = ta.getInteger(R.styleable.RainView_rainNum, 50);

我们在定义rainNum的类型的时候是定义的integer,这里就是使用getInterger,大家注意观察,如果是String的话,就是getString;

括号前面一个是RainView_rainNum,这个就是格式,属性集合名称_具体属性名,括号后面一个50是默认值,如果你在布局文件中没设置这个属性,那么在这里他的默认值设置成了50;如果在布局文件中设置了这个属性的值,那么这个默认属性就没有用了。比如我么在布局文件中把rainNum设置成了2,这里的50就没有用了;

好了,到此为止,Android实现自定义View的自定义属性的一般步骤就基本完整;然后大家就可以在自定的view中使用这些属性了。作者自己也是才入行不久,上面讲解的没有什么高深的言语,都是一些很基本的过程,但就是这种很基本东西,如果一段时间没有用了,很多细节就容易忘了,所以大家要善于总结。网上看了很多大牛的视频,讲得都很好,但是不善于总结归纳,很容易就忘记了,我们想要快速的掌握一门技术,就必须站在巨人的肩膀上面,多发现,多总结。希望大家和我一起进步,每天进步一点,量变引用质变。那样才能学到真把式!下面奉上我自己的一个演示:

Android实现自定义View的自定义属性的一般步骤_第4张图片


最后奉上源码,希望大家从中学到东西。

下载实例代码

更多相关文章

  1. android开发中的数据库定义诀窍
  2. Android 自定义跑马灯 实现超长文本,滚动完当前在继续切换下一条
  3. Android界面设计基础:控件焦点4个步骤
  4. android 开发零起步学习笔记(九):android 控制控件的位置和大小及L
  5. Android 自定义View 仿蚂蚁信用分析(正多边形)
  6. 自定义HID设备与Android设备通信
  7. android 自定义menu及 Error parsing XML: no element found问题
  8. Android中自定义控件的步骤

随机推荐

  1. android 弹出日期滑动选择框,日期滚动滑动
  2. Android实现图表绘制和展示
  3. android实现推送实践
  4. android Activity实现从底部弹出或滑出选
  5. Android的背景
  6. 新建Android工程遇到几个问题
  7. Android(安卓)Intent的几种用法全面总结
  8. Android入门第十六篇之Style与Theme
  9. android每日一问【2011-09-27】
  10. Android(安卓)应用程序之间数据共享—Con