0

レイアウト:</ p>

<TextView
        android:id="@+id/textView1" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_centerHorizontal="true" 
        android:layout_centerVertical="true" 
        android:text="A" 
        android:textSize="?normal_font_size" 
         />

attrs.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <attr name="normal_font_size" format="dimension" />
</resources>

themes.xml:

  <style name="MainTheme" parent="@android :style/Theme.Black.NoTitleBar">
        <item name="normal_font_size">15px</item>
    </style> 

コードで定義されたテーマの値を動的に読み取る方法は?

4

1 に答える 1

0

で、attrs.xml読みたい値のグループを作成し、カスタム値を追加することもできます

<declare-styleable name="MyAttrs">
        <attr name="android:textSize"/>
</declare-styleable>

コードでは、を介してこの値にアクセスできるようになりますTypedArray

TypedArray a = context.obtainStyledAttributes(context.getTheme(), R.styleable.MyAttrs);
int textSize = a.getInteger(R.styleable.MyAttrs_android_textSize, DEFAULT_TEXT_SIZE);
a.recycle();
于 2012-10-26T12:05:51.333 に答える