在學習開發過程中有許多時候需要使用自定義控制項。。然而如何在布局過程中更加方便的定義自定義的屬性呢?
我們需要規定漸變顏色和字型大小等屬性,為了像android:textsize="14sp"這樣方便的開發。。我們可以在專案資料夾下的res\values
資料夾中建立attrs.xml
如同:
<?xml version="1.0" encoding="utf-8" ?>
- -
formate屬性值說明:
1. reference:資源id
2. color:顏色值
3. boolean:布林值
4. dimension:尺寸值
5. float:浮點值
6. integer:整型值
7. string:字串
8. fraction:百分數
9. enum:列舉值
10. flag:位或運算
自定義屬性使用:
要注意的是我們首先要引入我們的包名,,告訴編譯器該屬性在我們自己的專案中查詢而不是在android定義的包中尋找。
xmlns:ww
=""其中ww是可以自己定義,但是後面的包名com.ww.mybottomtitle必須是整個專案的包名,
我在最開始使用的時候就是犯了這個錯誤誤以為是自定義控制項所在的包名,最終錯誤。。。。你們懂的。。。debug除錯調的差點崩潰。。
此處定義屬性之後如何在我們定義的控制項中獲取到該資料呢?
如下:
typedarray array=context.obtainstyledattributes(attrs, r.styleable.mytabexchangeview);
for (int i = 0; i < array.getindexcount(); i++)
} array.recycle();
這樣我們就可以得到我們從xml中所寫入的資料啦。。是不是很方便呢?當然為了保持以後使用該屬性的一致性我們需要進行array.recycle() 了。
自定義屬性之xml檔案中自定義的屬性
在 中,我們有時會看到 的布局中或有我們沒見過的屬性例如 建立attrs.xml檔案,如下 這是因為使用的自定義屬性,下來我們了解一下具體步驟 新建乙個自定義類myattribute public class myattribute extends view private int myage pr...
js json轉xml(可自定義屬性,區分大小寫)
直接上 在網上找了很多例子,大多數不適用,而且麻煩,自己進行了一些調整,完成了乙個可以區分大小寫的json轉xml的小功能 功能實現js function creatxmldoc obj return item this.children children function loadxmldoc d...
Android 自定義控制項的xml屬性
1.定義一些自定義屬性 建立乙個屬性xml檔案 values attrs.xml,內容如下 該檔案是定義屬性名和格式的地方,需要用包圍所有屬性。其中name為該屬性集的名字,主要用途是標識該屬性集。在控制項的構造方法中獲取自定義屬性集合的時候,會使用該name。如 typedarray a cont...