android获取自定义属性,android 自定义View中获取系统属性
时间: 2023-11-30 19:02:11 浏览: 157
25. Android自定义View以及layout属性全攻略.txt
要获取自定义属性,可以使用TypedArray类。在自定义View的构造函数中,可以通过context.obtainStyledAttributes(attrs, R.styleable.CustomView)方法获取TypedArray对象,然后使用TypedArray的getXXX()方法获取自定义属性的值,其中XXX表示属性的数据类型。例如,获取一个自定义属性名为customAttr的字符串值,可以使用以下代码:
```java
TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.CustomView);
String customAttrValue = a.getString(R.styleable.CustomView_customAttr);
a.recycle();
```
要获取系统属性,可以使用android.R.styleable类。例如,获取android:textColor属性的值,可以使用以下代码:
```java
TypedArray a = context.obtainStyledAttributes(attrs, android.R.styleable.TextView);
int textColor = a.getColor(android.R.styleable.TextView_textColor, Color.BLACK);
a.recycle();
```
其中,android.R.styleable.TextView表示TextView控件的所有属性,a.getColor()方法获取颜色值,Color.BLACK指定了当属性值不存在时的默认值。注意,在获取系统属性时,需要使用系统的R类,即android.R。
阅读全文