0

カスタムビューのスタイリングに問題があります。さまざまなレイアウトでさまざまなスタイルを使用したいと考えています。しかし、私のスタイルは適用されません。

CustomView レイアウト:

<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android"     
        <ImageView 
                   android:id="@+id/img"                       
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"/>

        <TextView 
                  android:id="@+id/txt"     
                  android:layout_width="wrap_content"
              android:layout_height="wrap_content"       
              android:layout_gravity="bottom|center_horizontal"               
</merge>

別のレイアウトでの定義:

<com.buka.customviews.Bukaview
         android:id="@+id/bukaId"
         android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             style="@style/BukaStyle1">

スタイル.xml

<style name="BukaStyle1">
        <item name="android:textSize">10sp</item>
</style>

<style name="BukaStyle2">
        <item name="android:textSize">20sp</item>
</style> 

ありがとう

4

1 に答える 1

0

カスタム属性を作成する必要があります:
<attr name="BukaStyleTextSize" format="dimensions" />

次に、TextViewカスタム ビュー レイアウトのタグに :を入力
android:textSize="?attr:BukaStyleTextSize"

します。最後に、スタイルにstyles.xml:を入力します。
<item name="BukaStyleTextSize>10sp</item>

于 2012-11-21T13:34:47.387 に答える