我创建了一个android项目,其中我有一个包含6个项目的列表视图。 我希望每当我从列表中选择任何项目时,它都会变为橙色,直到我按下提交按钮为止。
代码是:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.SafeWalkApp.SecondActivity" >
<ListView
android:id="@+id/sampleListView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginTop="5dp"
android:background="@android:color/transparent"
android:cacheColorHint="@android:color/transparent"
android:divider="#CCCCCC"
android:dividerHeight="1dp"
android:entries="@array/vol_list" >
</ListView>
<Button
android:id="@+id/onsubmit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="@string/submit" />
</RelativeLayout>
这是我的xml代码。 我已经尝试将颜色添加到 color.xml ,但这显示了一条错误消息,基本上是针对背景信息。所以请帮我解决这个问题。
答案 0 :(得分:1)
如果您使用的是自定义列表视图并且自定义适配器设置了项目,那么您可以更改
中列表视图项的颜色nList =(ListView)findViewById(android.R.id.yourlistname); nList.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
}
});
在上面的函数中,nList是你想要进行更改的列表,在它的on click listner中,你可以像参数arg1一样获得所选的项目视图,从中你可以得到线性布局及其它所有其他根据需要控制和更改任何控件颜色,文本等
在此处获取视图,并通过获取视图并设置其背景等设置所需的任何颜色。 我不能在这里写完整个代码,但我希望你能得到我的?
答案 1 :(得分:0)
您必须创建状态可绘制颜色。还有一些xml.files根据行的状态定义不同的颜色。
也许这可以帮到你。
How to change color of ListView items on focus and on click
Android LinearLayout with color resource: What am I doing wrong?
答案 2 :(得分:0)