2

我知道如何使用 Layout inflator 制作自定义列表视图,并将 xml 布局用于列表视图的行。但我想知道我们可以在 listview 行上应用不同的样式,如下所示。我是android新手,如果这是一个愚蠢的问题,我很抱歉

行中有阴影的列表视图

4

2 回答 2

1

这是listview_item_shadow.xml:

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="rectangle">
              <solid android:color="@android:color/darker_gray" />
        </shape>
    </item>
     <item 
         android:right="1dp" 
         android:bottom="2dp">        
        <shape android:shape="rectangle">
              <solid android:color="@android:color/white"/>
        </shape>
     </item>         
</layer-list>

现在您应该在 ItemView 的选择器中使用它!-listview_item_backgroundstate.xml您需要设置listview_item_backgroundstate.xml为您的 ListView 项目的背景

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

最后,您必须像在 ListView 中一样设置 custom_selector.xml。android:listSelector="@drawable/custom_selector.xml"

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

或者使用这种图像作为每个列表项的背景..

于 2013-10-08T11:52:53.623 回答
0

使用这个网站来生成你自己的风格,

http://www.holshousersoftware.com/glass/

于 2013-10-08T11:51:12.990 回答