attr 属性
style 样式
二者都是在res/values下面的xml文件
attr: for example:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
类似的"layout_height,layout_width"都是属性
style就是这个控件设定好的一些值,方便重复调用
自定义的一个样式"TextStyle"
使用的android默认的属性shadowDx..设置好的具体的值
<style name="TextStyle">
<item name="android:shadowDx">-0.5</item>
<item name="android:shadowDy">1</item>
<item name="android:shadowRadius">0.5</item>
<item name="android:singleLine">true</item>
<item name="android:ellipsize">marquee</item>
</style>
自定义的attr: 这个format就是格式
reference 表示引用,参考某一资源ID
string 表示字符串
color 表示颜色值
dimension 表示尺寸值
boolean 表示布尔值
integer 表示整型值
float 表示浮点值
fraction 表示百分数
enum 表示枚举值
flag 表示位运算
<resources>
<declare-styleable name="ViewPagerIndicator">
<!-- Style of the circle indicator. -->
<attr name="vpiCirclePageIndicatorStyle" format="reference"/>
<!-- Style of the icon indicator's views. -->
<attr name="vpiIconPageIndicatorStyle" format="reference"/>
<!-- Style of the line indicator. -->
<attr name="vpiLinePageIndicatorStyle" format="reference"/>
<!-- Style of the title indicator. -->
<attr name="vpiTitlePageIndicatorStyle" format="reference"/>
<!-- Style of the tab indicator's tabs. -->
<attr name="vpiTabPageIndicatorStyle" format="reference"/>
<!-- Style of the underline indicator. -->
<attr name="vpiUnderlinePageIndicatorStyle" format="reference"/>
</declare-styleable>
</resources>
使用的时候,在布局文件头里
添加
xmlns:
myapp="http://schemas.android.com/apk/res/包名"
在xml文件里使用跟系统自带控件一样使用
类似下面的语法
myapp:vpiIconPageIndicatorStyle="xxxxx"
====================================================================================================================================================================
上边的如果要使用自定义的属性进行自定义样式
格式应该是
<style name="Theme.PageIndicatorDefaults" parent="android:Theme">
<item name="vpiIconPageIndicatorStyle">@style/Widget.IconPageIndicator</item>
<item name="vpiTabPageIndicatorStyle">@style/Widget.TabPageIndicator</item>
</style>
//上图样式的名称是"Theme.PageIndicatorDefaults",包含两个属
//性"vpiIconPageIndicatorStyle"和"vpiTabPageIndicatorStyle",值都是引用类型的
attr和style格式都是需要<resources>起头的
获取示例:
TypedArray a = context.obtainStyledAttributes(null, R.styleable.ViewPagerIndicator,0, 0);
int rsid= a.getResourceId(R.styleable.ViewPagerIndicator_vpiTabPageIndicatorStyle, 0);
a.recycle();//必须回收
分享到:
相关推荐
Android自定义Attr属性 的具体使用例子,看完之后,你就知道如何自定义控件的属性
测试:Android 中自定义属性(attr.xml,TypedArray)的使用 注意:MyView(Context context,AttributeSet attrs)构造函数的实现, 和注意main.xml的LinearLayout 里加的声明 要了解:test:textSize="20px" test:...
NULL 博文链接:https://elingwange.iteye.com/blog/1285289
Android自定义View在布局中设置颜色 问题描述: 以下为学弟的代码 //attrs文件 <attr name=leftcolor format=color/> <attr name=rightcolor format=color/> //Java文件代码,获取颜色 int leftcolor=attrs....
以下内容给大家介绍Android中自定义水平进度条样式之黑色虚线,对代码实现方法感兴趣的朋友一起学习吧。 布局layout中使用: <ProgressBar android:id=@+id/progress_bar style=?android:attr/...
Android自定义聊天气泡形状ImageView可设置箭头位置(左或右),图片圆角大小(属性在自定义attr.xml里面)
Android原生控件只有横向进度条一种,而且没法变换样式,比如原生rom的样子 很丑是吧,当伟大的产品设计要求更换前背景,...android:attr/progressBarStyleHorizontal” android:layout_width=”match_parent”
这里有很多自定义view可以参考思路思路比较简单,整个view无非两样东西云雨滴这里又包含两部分动画,一部分是云的左右移动动画,一部分是雨滴移动动画 那我们这里可以自定义一些属性,如果对自定义属性还不太了解的...
开发过程中经常会自定义View来实现各种各样炫酷的效果,在实现这些效果的同时,我们往往会定义很多attr属性这篇文章主要介绍了Andorid自定义attr的各种坑,需要的朋友可以参考下
Android高手进阶教程之----Android 中自定义属性(attr.xml,TypedArray)的使用! .doc Android高手进阶教程之----Android中万能的BaseAdapter(Spinner,ListView,GridView)的使用!.doc Android高手进阶教程之----通过...
上一篇文章总结了下自定义View的几个步骤,如果还有不清楚的同学可以先去看看Android自定义View(一) ,这篇文章和大家分享一下自定义加载进度条,效果如下 下面就以水平的进度条为列进行讲解: 1.首先还是在attrs....
自定义属性都存在于/value/attr.xml文件中,以如下格式存在。 代码如下: ”自定义属性名称”> <attr name=”属性名称” format=”属性种类”/> …… 对于自定义属性中的format的值及其含义如下: format属性值:...
首先我们在attrs属性文件中增加几个自定义属性 <?xml version=1.0 encoding=utf-8?> <!-- 圆形进度条进度显示的颜色 --> <attr name=roundProgressColor format=color></attr> <!-- 外圈圆的...
在上一篇的文章中介绍了自定义控件的属性,详情见《详解Android自定义控件属性TypedArray以及attrs》。那么在这基础上实现随机验证码生成,里面的代码是自定义控件以及涉及到自定义view绘画。 1、先看实现的效果图 ...
最近接触了Android自定义控件,涉及到自定义xml中得属性(attribute),其实也很简单,但是写着写着,发现代码不完美了,就是在attrs.xml这个文件中,发现属性冗余,于是就想有没有类似属性继承或者include之类的方法....
自定义封装 banner 组件,供大家参考,具体内容如下 1. 效果图预览 2.基本功能 一个简单方便的轮播图组件,基于viewpager 基础上进行的封装。 可设置 项目中图片,网络图片, View; 支持循环自动播放,手势滑动...
Android自定义View实现等级滑动条的实例 实现效果图: 思路: 首先绘制直线,然后等分直线绘制点; 绘制点的时候把X值存到集合中。 然后绘制背景图片,以及图片上的数字。 点击事件down的时候,换小图片为...
Android 自定义view模板并实现点击事件的回调 主要的目的就是仿老版QQ的一个界面做一个模板。然后实现点击事件的回调。先看效果图: 步骤如下: 1.在res/values/目录下新建一个atts.xml文件 内容如下: ...
学了Android有一段时间了,一直没有时间写博客,趁着周末有点空,就把自己做的一些东西写下来. 一方面锻炼一下自己的写文档的能力,另一方面分享代码的同时也希望能与大家交流一下技术,共同学习,共同进步. 废话...
2、在View的构造方法中获得我们自定义的属性 3、重写onMesure 4、重写onDraw 1、自定义属性: <?xml version=1.0 encoding=utf-8?> <resources> <attr name=firstColor format=color> <attr name=...