每个 ListView Item 中都有一个 TextView,我通过自定义适配器设置它。TextView XML 不在写有 ListView XML 的同一文件中,我希望当 ListView 的任何 Item 被选中时,该特定 Item 的字体颜色应更改。我还尝试通过定义 TextView 的不同状态,即选定、聚焦和按下状态来解决问题,但这并没有解决我的问题。请给我提供一些解决方案。以下是代码片段。
在一个 XML 文件(例如 file1.xml)中有一个 ListView。
<ListView
android:id="@+id/listView1"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="0.5"
android:clickable="true" />
在不同的xml文件中,比如file2.xml中有一个TextView。
<TextView
android:id="@+id/rowListTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="10dp"
android:paddingLeft="10dp"
android:paddingTop="10dp"
android:text="@string/app_name"
android:textColor="@color/file3"
android:textSize="10sp"
android:textStyle="bold" />
在res/color文件夹中有一个用于文本颜色属性的文件,即file3.xml。
<item android:state_selected="true" android:color="@android:color/white"/>
<item android:state_focused="true" android:color="@android:color/white"/>
<item android:state_pressed="true" android:color="@android:color/white"/>
<item android:color="@android:color/black"/>