Android如何在xml布局中使用自定義屬性

2021-09-01 03:14:13 字數 1803 閱讀 9178

注意到其中的兩處:

xmlns:launcher=」

和launcher:defaultscreen="2"

可以看出在這個布局檔案中,使用了自定義屬性。

以前沒遇到過,既然這裡碰到了,就順便學習下,下面就寫個簡單的示例,權當學習筆記,便於以後查閱。

1. 定義一些自定義屬性

建立乙個屬性xml檔案: values/attrs.xml, 內容如下:

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

解釋如下:

屬性relation有4種可選值:icon_left, icon_right, icon_above,icon_below.

屬性icon的可選值為引用: 例如:"@/drawbable/icon".

屬性text的可選值為string, 例如: "hello world", 也可是string的引用"@string/hello".

屬性text_size的可選值為尺寸大小,例如:20sp、18dip、20px等.

屬性text_color的可選值為整數,例如:"0xfffffff", 也可以是color的引用"@color/white".

2. 定義乙個能夠處理這些屬性值的view或者layout類

package com.braincol.viewattrs;

import android.content.context;

import android.content.res.typedarray;

import android.util.attributeset;

import android.util.log;

import android.widget.imageview;

import android.widget.linearlayout;

import android.widget.textview;

public class icontextview extends linearlayout

this.setorientation(orientation);

this.addview(mimageview);

mimageview.setpadding(left, top, right, bottom);

this.addview(mtextview, textviewindex);}}

可以看出這個linearlayout 子類icontextview中只有兩個元素,imageview 和mtextview,通過從xml配置檔案中讀取屬性值來決定icon和text的內容、相對位置及其它屬性。

3. 在layout布局檔案中使用這個自定布局及其屬性

layout/main.xml:

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

可以看到我們在這個布局檔案中加入了乙個新的命名空間:

xmlns:icontext=""

並使用我們自定義的那些屬性:

icontext:relation="icon_left"

icontext:icon="@drawable/hi"

icontext:text="hi, how are you !"

icontext:text_size="30sp"

4. 在activity中使用該布局

package com.braincol.viewattrs;

import android.os.bundle;

public class viewattrs extends activity

}

android的布局xml檔案如何新增注釋?

在 xml 中編寫注釋的語法與 html 的語法很相似 this is a comment 注意 android中的xml只能在元件布局 後,或者在元件的前面新增注釋。android id id item layout android layout width fill parent android...

xml布局內容總結(一) Android

關於安卓專案中xml的使用非常多。為了達到一些好的ui效果。須要對xml比較熟練。會使用非常多的小技巧,本人準備對這些小技巧進行整理和總結,希望進行分享和交流。關於weight的使用,因為weight在布局中主要按比例進行元件的擺放,因此比較easy解決適配的問題,所以學會使用weight會減輕開發...

如何在HTML中引用XML資料

1,內嵌xml資料 第一次親密接觸 物件 xml 物件 親密程度 結論 2.外部xml檔案的引用 首先利用以前的知識建立乙個xml檔案 xml 中不需要特別標記,只需要 code myxml.xml 陳睿主席 33 code html 姓名 職位 描述 注意 xml html結合除錯問題 注意大小寫...