最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Android自定義控件屬性

 更新時(shí)間:2016年02月17日 11:15:46   作者:BetterLaterThanNever  
這篇文章主要為大家詳細(xì)介紹了Android自定義控件屬性,需要的朋友可以參考下

在Android開發(fā)中,往往要用到自定義的控件來實(shí)現(xiàn)我們的需求或效果。在使用自定義
控件時(shí),難免要用到自定義屬性,那怎么使用自定義屬性呢?

在文件res/values/下新建attrs.xml屬性文件,中定義我們所需要的屬性。

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

<resources><!-- resource是跟標(biāo)簽,可以在里面定義若干個(gè)declare-styleable -->
  <declare-styleable name="custom_view"><!-- name定義了變量的名稱 -->
    <attr name="custom_color" format="color"></attr> <!-- 定義對(duì)應(yīng)的屬性,name定義了屬性的名稱 -->
    <attr name="custom_size" format="dimension"></attr> <!--每一個(gè)發(fā)生要定義format指定其類型,類型包括 
     reference  表示引用,參考某一資源ID
     string  表示字符串
     color  表示顏色值
     dimension  表示尺寸值
     boolean  表示布爾值
     integer  表示整型值
     float  表示浮點(diǎn)值
     fraction  表示百分?jǐn)?shù)
     enum  表示枚舉值
     flag  表示位運(yùn)算
    -->
 </declare-styleable>

public class CustomTextView extends TextView {
  private int textSize;//自定義文件大小
  private int textColor;//自定義文字顏色

  //自定義屬性,會(huì)調(diào)用帶兩個(gè)對(duì)數(shù)的構(gòu)造方法
  public CustomTextView(Context context, AttributeSet attrs) {
    super(context, attrs);
    TypedArray ta = context.obtainStyledAttributes(attrs, R.styleable.custom_view);//TypedArray屬性對(duì)象
    textSize = ta.getDimensionPixelSize(R.styleable.custom_view_custom_size, 20);//獲取屬性對(duì)象中對(duì)應(yīng)的屬性值 
    textColor = ta.getColor(R.styleable.custom_view_custom_color, 0x0000ff);
    setColorAndSize(textColor, textSize);//設(shè)置屬性
    ta.recycle();
  }

  public CustomTextView(Context context) {
    super(context);
  }

  private void setColorAndSize(int textColor, int textSize) {
    setTextColor(textColor);
    setTextSize(textSize);
  }

}

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  xmlns:ldm="http://schemas.android.com/apk/res/com.ldm.learn"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:background="#f6f6f6"
  android:orientation="vertical"
  android:padding="10dp" >

  <com.ldm.learn.CustomTextView
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:text="自定義TextView"
    ldm:custom_color="#333333"
    ldm:custom_size="35sp" />

</LinearLayout>

布局說明:


通過以上幾步就可以實(shí)現(xiàn)我們想要的自定義屬性效果(用自定義屬性設(shè)置文字大小及顏色)啦!

相關(guān)文章

最新評(píng)論

莒南县| 贺州市| 科技| 长宁县| 襄汾县| 江口县| 沂南县| 布拖县| 牡丹江市| 江油市| 江油市| 临夏市| 通海县| 右玉县| 普定县| 六枝特区| 平原县| 五指山市| 鄂托克前旗| 宜宾县| 井冈山市| 得荣县| 保靖县| 柳河县| 柘荣县| 泰顺县| 海城市| 阜新| 静乐县| 临潭县| 喜德县| 大英县| 巴中市| 钟山县| 雷州市| 婺源县| 石城县| 金平| 浦东新区| 神木县| 慈利县|