Android ListView项目阴影+;自定义选择器

Android ListView项目阴影+;自定义选择器,android,listview,layout,selector,shadow,Android,Listview,Layout,Selector,Shadow,我想在ListView项上放置阴影,并应用自定义选择器。但我不知道如何同时应用它们 下面是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">

我想在ListView项上放置阴影,并应用自定义选择器。但我不知道如何同时应用它们

下面是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> 

和自定义选择器:

<?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>

我尝试将选择器应用于整个ListView
android:listSelector=“@drawable/selector.xml”
并将阴影应用于ListView项目
android:background=“@drawable/shadow.xml”
,但在这种情况下,ListView项目将有阴影,但不会对触摸做出反应


提前谢谢你

我找到了解决办法。seletor没有出现的原因是Android的ListView结构。若将“背景”设置为“列表项视图”,则它与选择器重叠,所以您无法看到它。解决方案是在单击时使ItemView背景透明

下面是
listview\u item\u 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>
最后,您必须设置
custom_selector.xml
,如
ListView
中所示<代码>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="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>
<?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>