1

我有这样的布局

<RelativeLayout
            android:id="@+id/layout1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="buttonClick" >

            <ImageView
                android:id="@+id/img1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_centerVertical="true"
                android:background="@drawable/imageView_bg"
                android:focusable="false"
                android:focusableInTouchMode="false" />

            <Button
                android:id="@+id/button1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="18dip"
                android:background="@drawable/button_bg"
                android:focusable="false"
                android:focusableInTouchMode="false"
                android:gravity="left|center_vertical"
                android:paddingLeft="25dip"
                android:text="TEXT"
                android:textColor="#ffffff"
                android:textSize="20dip" />
        </RelativeLayout>

button_bg.xml

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

</selector>

imageView_bg.xml

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

    </selector>

我想整体单击视图。按钮和图像视图都按下了图像。单击RelativeLayout 时,按钮和图像视图被按下。怎么可能?使用上面的布局,按钮和图像视图分别按下时会显示按下的图像。

提前致谢

4

1 回答 1

0

你可以这样做,

相对布局的 ON 事件单击执行,

button.perfomClick()
imagebutton.perfomClick()

希望能帮助到你..

于 2013-01-15T05:34:21.723 回答