8

我使用选择器,但我不知道如何设置文本大小。也许我做错了什么 - 帮助

箭头.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@drawable/button_pressed" android:state_pressed="true" android:color="@color/green"></item>

</selector>
4

2 回答 2

9

您可以在动画资源下使用选择器:

<!-- res/animator/text_size.xml -->
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_focused="true">
        <set>
            <objectAnimator
                android:duration="0"
                android:propertyName="textSize"
                android:valueTo="18sp"
                android:valueType="floatType"/>
        </set>
    </item>
    <item android:state_focused="false">
        <set>
            <objectAnimator
                android:duration="0"
                android:propertyName="textSize"
                android:valueTo="10sp"
                android:valueType="floatType"/>
        </set>
    </item>
</selector>

您可以将持续时间设为 0 以直接跳转到该值,也可以在其中设置持续时间。

android:stateListAnimator然后在您的视图上使用它:

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Button 3"
    android:stateListAnimator="@animator/text_size"/>
于 2017-06-23T18:30:01.707 回答
-2

创建您自己的style.xml并定义文本样式。然后在选择器中设置样式。

style.xml

<style name="myStyle">  
    <item name="android:textSize">9px</item>
    <item name="android:textColor">#fff</item>
    <item name="android:textStyle">bold</item>
</style>

在你的选择器中

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true"
          style="@style/myStyle" /> 
</selector>
于 2015-03-18T07:31:56.663 回答