我可以使用自定义适配器设置listview,显示正确的输出。另一个列表项也有一个渐变样式,请参阅下面的drawable.xml如何在点击其中任何一个时将项目背景更改为其他某个渐变。我可以为每个项目设置不同的渐变。
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#FFFAFAFA"
android:centerColor="#FFFFFFFF"
android:endColor="#FFFAFAFA"
android:angle="90"/>
</shape>
我的档案......
activity_main.xml ....主要xml文件
MainActivity.java ....主要活动
Item.java ....项目选择器方法
ItemAdaptor ....自定义适配器
list_item.xml ..... item(textView)样式
答案 0 :(得分:0)
我在点击
时出现了颜色变化<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
...
android:background="@drawable/listitem_states" >
with res / values / listitem_states.xml:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_selected="true"
android:drawable="@color/listitem_active_color" ></item>
<item
android:state_pressed="true"
android:drawable="@color/listitem_active_color" ></item>
<item
android:drawable="@color/listitem_bg_color" />
</selector>
我猜你可以轻松地将其用于渐变。
答案 1 :(得分:0)
试试这样..
在drawable中添加
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Selector style for listrow -->
<item
android:state_selected="false"
android:state_pressed="false"
android:drawable="@drawable/gradient_bg" />
<item android:state_pressed="true"
android:drawable="@drawable/gradient_bg_hover" />
<item android:state_selected="true"
android:state_pressed="false"
android:drawable="@drawable/gradient_bg_hover" />
</selector>
添加布局
<ListView
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:divider="#FFFFFF"
android:dividerHeight="1dp"
android:listSelector="@drawable/list_selector" />