选择器不使用布局和图像视图

时间:2011-06-02 10:31:03

标签: android layout imageview

我想使用选择器进行布局和图像视图。但它不适用于我。 当我将图像视图更改为图像按钮或按钮时,它工作正常。任何帮助将不胜感激..提前感谢..

这是我使用的xmls ..

<?xml version="1.0" encoding="utf-8"?>
<selector
    xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:state_pressed="true"
        android:drawable="@drawable/bg" 
        />
    <item
        android:drawable="@drawable/bg_01" />
</selector> 

布局xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:orientation="vertical"
    android:layout_height="fill_parent">
    <ImageButton
        android:layout_width="100dp"
        android:layout_height="50dp"
        android:text="layout tester"
        android:textColor="#000000"
        android:textStyle="bold"
        android:paddingTop="10dp"
        android:src="@drawable/testselector"
        android:layout_gravity="center_horizontal" />
    </LinearLayout>

5 个答案:

答案 0 :(得分:62)

我刚才遇到了这个问题。您必须将LinearLayout设置为可单击。您可以使用

在XML中执行此操作
android:clickable="true"

或使用

代码
yourLinearLayout.setClickable(true);

答案 1 :(得分:4)

试试这个

    <selector
  xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:state_focused="true" 
          android:state_pressed="false" 
          android:drawable="@drawable/lastread_ok" />
    <item android:state_focused="true" 
          android:state_pressed="true"
          android:drawable="@drawable/lastread_ok" />
    <item android:state_focused="false" 
          android:state_pressed="true"
      android:drawable="@drawable/lastread_ok_selected" />
    <item android:drawable="@drawable/lastread_ok" />
</selector>

您可以使用图片代替lastread_ok&amp;升astread_ok_selected

答案 2 :(得分:1)

使用imageview的id代替线性布局和setclicklistener for imageview本身,它会工作!!

答案 3 :(得分:0)

对我而言,它有助于不将属性android:clickable分配给布局,而是分配给ImageView。我只是希望图像可以点击,而不是包含布局。

答案 4 :(得分:0)

您必须将src更改为background

ImageButtonImageView并在ImageView属性中写android:clickable="true"