卡片布局,如Google Play音乐

时间:2013-08-22 07:37:36

标签: android android-layout android-listview

单击布局,显示半透明橙色图层。 在布局中,有按钮,按钮可以点击,但不需要显示橙色图层。 怎么实现? 这是对的吗?

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" 
    >
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@android:color/white"
        android:orientation="vertical" >
        <TextView
            android:id="@+id/tv_position"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" 
            android:textColor="@android:color/white"
            android:text="position1"
            android:textSize="20sp"
            />
        <Button 
            android:id="@+id/button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" 
            android:text="Button"
            />
    </LinearLayout>
<!-- the orange layer -->
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_margin="10dp"
        android:background="@drawable/selector_translucent_orange"
        >
    </RelativeLayout>
</FrameLayout>

和selector_translucent_orange.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@color/trans_orange" android:state_pressed="true"></item>
    <item android:drawable="@android:color/transparent"></item>

</selector>

1 个答案:

答案 0 :(得分:0)

从您的问题来看,您的线性布局似乎需要一个选择器。如果那是真的

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_margin="10dp"
    android:background="@drawable/selector_translucent_orange"
    android:orientation="vertical" >
    <TextView
        android:id="@+id/tv_position"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:textColor="@android:color/white"
        android:text="position1"
        android:textSize="20sp"
        />
    <Button 
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:text="Button"
        />
</LinearLayout>