安卓自定義XML屬性attrs

2021-08-14 05:18:43 字數 2055 閱讀 6209

attrs看字面意思就是一組屬性的集合,那attrs有什麼用呢,在自定義view的時候,一般會自定義一些屬性,通過構造方法中attributeset引數的封裝,讓我們能夠獲取到為view配置的屬性。(自定義屬性)

1.定義對應的屬性

在values資料夾下新建乙個attar_custom.xml檔案:

<?xml version="1.0" encoding="utf-8"?>

format

="color|reference" />

format

表示這個屬性的值的型別,型別有以下幾種:

1.reference:引用資源

(參考某一資源id)

2.string:字串

3.color:顏色

4.dimension:尺寸值

5.fraction:百分數

6.enum:列舉型別

7.flag:位或運算

8. fraction:百分數。

(1)屬性定義:

[html] view plaincopyprint?

(2)屬性使用:

android:pivotx="200%"  

android:pivoty="300%"  

/>  

9. enum:列舉值。

(1)屬性定義:

(2)屬性使用:

android:orientation="vertical" >  

10. flag:位或運算。

(1)屬性定義:

(2)屬性使用:

android:windowsoftinputmode="stateunspecified

| stateunchanged | statehidden" >  

注意:屬性定義時可以指定多種型別值:

(1)屬性定義:

[html] view plaincopyprint?

(2)屬性使用:

[html] view plaincopyprint?

android:layout_width="42dip"  

android:layout_height="42dip"  

android:background="@drawable/id|#00ff00" />  

2.在自定義**裡寫

typedarray typedarray = context.obtainstyledattributes(attrs, r.styleable.

stroketextview);

int  

outercolor

= a.get

color

(r.styleable.

stroketextview

_outercolor, 

color.blue);

int  

innnercolor

= a.get

color

(r.styleable.

stroketextview

_innnercolor,

color.

green);3

.在xml中定義自定義屬性

xmlns:android="

" xmlns:tools="

"xmlns:

=""通常我們在布局檔案中使用自定義屬性的時候

會這樣寫

<

com.example.demo.stroketextview

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/hello_world"

android:textsize="28sp"

:outercolor="#000000"

呼叫自定義屬性

呼叫自定義屬性

android:layout_centerinparent="true"/>

注意,自定義的xml屬性必須給自定義的控制項使用。

android自定義屬性attrs

1.定義attrs.xml 2.xml中使用自定義屬性 3.命名規則 方式一 命名空間寫法 xmlns 空間名 自定義元件所在包名 空間名隨便定義,引用時保持一致,如myandroid 方式二 命名空間寫法 xmlns 空間名 空間名隨便定義,引用時保持一致,如myandroid 區別 issue ...

安卓自定義屬性運用

1.reference 參考某一資源id。1 屬性定義 background format reference 2 屬性使用 android layout width 42dip android layout height 42dip android background drawable id 2...

自定義控制項attrs屬性介紹

首先要在values目錄下新建attrs的xml檔案,檔案裡面是這樣寫的 其中format的屬性值包括 reference,color,boolean,dimension,float,integer,string,fraction,enum等 1.reference reference是引用型別,就...