gpt4 book ai didi

java - setItemChecked 用于 ListView 的 Android 选择器在版本 2.2.1 中不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 12:48:13 24 4
gpt4 key购买 nike

我尝试通过方法为选中/选定的行设置颜色:listView.setItemChecked(i, true);但在 Android 2.2.1 上不起作用,颜色没有改变。如果我使用 state_activated 那么这只适用于较新的版本。我怎样才能做到这一点?谢谢。我有选择器:

 <selector xmlns:android="http://schemas.android.com/apk/res/android">        
<item android:state_checked="true" android:drawable="@color/orange"/>
<item android:state_checked="false" android:drawable="@android:color/transparent"/>

然后是ListView:

<ListView
android:id="@+id/listMP3"
android:layout_width="match_parent"
android:layout_height="0dp"
android:scrollbarAlwaysDrawVerticalTrack="true"
android:layout_weight="1"
android:clickable="true"
android:choiceMode="singleChoice">
</ListView>

行 View :

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:background="@drawable/list_item_selector"
android:id="@+id/playerRow" android:paddingTop="5dp" android:paddingBottom="5dp" >

<TextView
android:id="@+id/itemName"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.72"
android:text="@string/songName" />

<TextView
android:id="@+id/itemLength"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/songLength" />

最佳答案

我解决了问题。我以编程方式删除了选择器和颜色更改,就像在适配器中一样。它适用于 Android 2.2 和 4.x 版本。

if (list.get(position).GetSelected()) 
view.setBackgroundResource(R.color.orange);
else
view.setBackgroundColor(Color.TRANSPARENT);

关于java - setItemChecked 用于 ListView 的 Android 选择器在版本 2.2.1 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36101528/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com