做listView的上拉下拉刷新,网上找了个历程。但是有些界面只有上拉刷新,有些界面是下拉刷新。觉得应该在xml里定义一个属性控制上下拉使能。

0、关于自定义控件:

自定义控件设计主要方式有:a) 继承于一种控件延伸自己的应用  b) 自己绘制,调用回调方法(监听的方式内部就是回调)

1、自定义属性设计

1.1  创建一个xml属性。在res / value 目录下创建一个attrs.xml 文件

<declare-styleablename="名称
= 自定义属性的类名">

1.2 在具体的自定义控件 文件中使用(xml布局文件)

xmlns:test="http://schemas.android.com/apk/res/com.miloisbadboy"
test:is_up = "true"
test:is_down = "true"

note: xmlns:test="http://schemas.android.com/apk/res/com.miloisbadboy" 这句不加后续步骤是得不到自定义属性值的,但是又不会报错

其中test就是上文中 test:is_up的前缀名字了(域)

com.miloisbadboy  包名

1.3 在java代码中使用

TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.PullToRefreshView);//attrs 是自定义控件构造函数中传回来的  接着的是styleable的名字也就是自定义控件的名字
        is_up = a.getBoolean(R.styleable.PullToRefreshView_is_up, false);   //第一个值为attrs中的对应字段,系统字段用小横杆链接,第二个参数是默认参数
        is_down = a.getBoolean(R.styleable.PullToRefreshView_is_down, false);

PullToRefreshView_is_down 类名加自定义属性名。option+/ 不能提示的话,只能重启eclipse了

属性值设置参考:

http://blog.csdn.net/ygc87/article/details/7336664

注:

format="reference"

可以直接使用资源的id  比如@drawable

android 自定义控件,自定义属性设置的更多相关文章

  1. Android 自定义控件高度设置onMeasure方法

    最近使用hellocharts需要表格横向显示,而activity需要竖屏显示,在旋转以后,默认宽度为不超过屏幕宽度,则一直无法显示全控件. 此时需要修改onMeasure方法,这个方法是用来控制控件 ...

  2. Android自定义控件之自定义属性

    前言: 上篇介绍了自定义控件的基本要求以及绘制的基本原理,本篇文章主要介绍如何给自定义控件自定义一些属性.本篇文章将继续以上篇文章自定义圆形百分比为例进行讲解.有关原理知识请参考Android自定义控 ...

  3. Android自定义控件实例,圆形头像(图库 + 裁剪+设置),上传头像显示为圆形,附源码

    Android项目开发中经常会遇见需要实现圆角或者圆形的图片功能,如果仅仅使用系统自带的ImageView控件显然无法实现此功能,所以通过系列文章的形式由简到繁全方位的介绍一下此功能的实现,巩固一下自 ...

  4. Android自定义控件之自定义属性(二)

    前言: 上篇介绍了自定义控件的基本要求以及绘制的基本原理,本篇文章主要介绍如何给自定义控件自定义一些属性.本篇文章将继续以上篇文章自定义圆形百分比为例进行讲解.有关原理知识请参考Android自定义控 ...

  5. Android自定义控件及自定义属性

    Android自定义控件及自定义属性 自定义控件 创建自定义控件 自定义一个类,继承View 继承View还是哪个类,取决于你要实现一个什么样的控件 如果你要实现的是一个线性布局的组合控件,就可以继承 ...

  6. Android自定义控件之自定义ViewGroup实现标签云

    前言: 前面几篇讲了自定义控件绘制原理Android自定义控件之基本原理(一),自定义属性Android自定义控件之自定义属性(二),自定义组合控件Android自定义控件之自定义组合控件(三),常言 ...

  7. Android自定义控件之自定义组合控件

    前言: 前两篇介绍了自定义控件的基础原理Android自定义控件之基本原理(一).自定义属性Android自定义控件之自定义属性(二).今天重点介绍一下如何通过自定义组合控件来提高布局的复用,降低开发 ...

  8. Android自定义控件之基本原理

    前言: 在日常的Android开发中会经常和控件打交道,有时Android提供的控件未必能满足业务的需求,这个时候就需要我们实现自定义一些控件,今天先大致了解一下自定义控件的要求和实现的基本原理. 自 ...

  9. Android自定义控件1

    概述 Android已经为我们提供了大量的View供我们使用,但是可能有时候这些组件不能满足我们的需求,这时候就需要自定义控件了.自定义控件对于初学者总是感觉是一种复杂的技术.因为里面涉及到的知识点会 ...

  10. 一起来学习Android自定义控件1

    概述 Android已经为我们提供了大量的View供我们使用,但是可能有时候这些组件不能满足我们的需求,这时候就需要自定义控件了.自定义控件对于初学者总是感觉是一种复杂的技术.因为里面涉及到的知识点会 ...

随机推荐

  1. HTML6注册表单输入日志标题

    一.找到元素. var d = document.getElementById("") var d = document.getElementsByName("" ...

  2. C++中数字与字符串之间的转换,别人的,

    C++中数字与字符串之间的转换   1.字符串数字之间的转换 (1)string --> char *   string str("OK");   char * p = st ...

  3. 文件搜索查找功能VC++

    1.搜索指定文件夹下的文件名和路径 #undef UNICODE #include <iostream> #include <string> #include <vect ...

  4. your local changes would be overwritten by merge. commit stash or revert them to proceed. view them

    error log: your local changes would be overwritten by merge. commit stash or revert them to proceed. ...

  5. 远程连接mysql数据慢的问题

    由于公司没有服务器,买的阿里云的服务器用于开发,所以就在本地连接服务器的mysql. 连接很慢,打开表也很慢,一开始没多想,以为是网络慢而已. 最近,开发经常要使用navicat连接数据库,实在是太慢 ...

  6. FileProvider是个什么东西?

    FileProvider是个什么东西? 在<读取并监控文件的变化>中,我们通过三个简单的实例演示从编程的角度对文件系统做了初步的体验,接下来我们继续从设计的角度来继续认识它.这个抽象的文件 ...

  7. Mac OS X 快捷键(完整篇)

    不少朋友提出要求,希望有个「高质量」的列表.其实这样的资源真是太多,平果官网就有 快捷键文档(多国语言版本).于是花了20分钟,浏览了一些网站,整理了点资源放过来供大家参考. 快捷键是通过按下键盘上的 ...

  8. iterm快捷键及操作技巧(附Linux快捷键)

    标签操作 新建标签:command + t 关闭标签:command + w 切换标签:command + 数字 command + 左右方向键 切换全屏:command + enter 查找:com ...

  9. 练习3.20 a 将中缀表达式转换为后缀表达式

    //将中缀表达式转换为后缀表达式 int main() { ; ]={,,,,,,,}; char tmp; PtrToStack s; s = CreateStack( MaxSize ); ) { ...

  10. linux(debian) 安装jdk

    #vi /etc/profile 在里面添加如下内容 export JAVA_HOME=/usr/java/jdk1.6.0_27 export JAVA_BIN=/usr/java/jdk1.6.0 ...