选择器的样式不起作用

时间:2012-09-12 11:47:45

标签: android android-selector

我的文字风格

<style name="TextStylePressed">
    <item name="android:textSize">20px</item>
    <item name="android:gravity">center_horizontal</item>
    <item name="android:textColor">#fff</item>
    <item name="android:textStyle">bold</item>
</style>

我使用样式的选择器arrow.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item style="@style/TextStylePressed">
        <shape>
            <gradient android:angle="90.0" android:endColor="#F1F4F2" android:startColor="#F1F4F2" android:type="linear" />

            <corners android:bottomLeftRadius="7dip" android:topLeftRadius="7dip" />
        </shape>
     </item>
</selector>

以及我使用选择器的位置列表

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/arrow"
    android:orientation="horizontal" >

    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical|left"
        android:layout_marginBottom="5dp"
        android:layout_marginLeft="5dp"
        android:layout_marginTop="5dp"
        android:layout_weight="1"
        android:gravity="center_vertical"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/tvDescr"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:text="wwwwww" >
        </TextView>
    </LinearLayout>

    <ImageView
        android:id="@+id/ivImage"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:maxHeight="20dp"
        android:minHeight="20dp" >
    </ImageView>

</LinearLayout>

enter image description here

你可以看到风格没有改变

2 个答案:

答案 0 :(得分:0)

尝试将android:state_pressed="true"添加到您的选择器项目中。

编辑:前几天我也遇到了这个确切问题。尝试在需要重复其状态的视图中设置android:duplicateParentState="true"。前几天它对我有用。

答案 1 :(得分:0)

  • 当你的箭被按下时,它应该成为一种特殊的风格;
  • 您的箭头用作线性布局的背景;
  • 问题: - 您是否将线性布局设置为可点击?            - 你是通过Java改变箭头样式的吗? [如果是,请提供代码示例]。