我正在尝试突出显示列表视图中从字符串中拆分的单个项目,但是整个Listview会突出显示而不是项目。
请帮忙。
protected void onPostExecute(String result) {
Local.Set(getApplicationContext(), "TicketHolders", result);
String[] RowData = result.toString().split("\\;");
List<String> TicketholdersArray = new ArrayList<>();
for(int x=0;x<RowData.length;x++){
TicketholdersArray.add(RowData[x].toString());
}
// below creates and styles listview
ListView listView1 = (ListView) findViewById(R.id.your_list_view_id);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(GuestlistActivity.this,R.layout.liststyle, TicketholdersArray);
listView1.setAdapter(adapter);
listView1.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> ArrayAdapter, View view, int position, long id) {
view.setSelected(true);
}
});
答案 0 :(得分:0)
要处理listview项目行中的特定视图,你必须在get view()方法上使用适配器获取视图并设置listner颜色等......无论你需要什么
答案 1 :(得分:0)
试试这个:
要在按下列表视图项时保持其颜色,请在列表视图布局中包含以下行:
android:background="@drawable/bg_key"
然后在drawable文件夹中定义bg_key.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/pressed_color"/>
<item
android:drawable="@color/default_color" />
</selector>
最后,将它包含在ListView onClickListener中:
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,long arg3) {
view.setSelected(true);
... //Anything
}
});
这样,任何时候都只会选择一个项目进行颜色选择。您可以使用以下内容在res / values / colors.xml中定义颜色值:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="pressed_color">#4d90fe</color>
<color name="default_color">#ffffff</color>
</resources>
希望这可以帮助你
答案 2 :(得分:0)
listview有一个显示所选项目的属性
将此代码添加到xml
中的listView item_layout android:background="@drawable/list_selector"
这是你的选择器代码。创建一个可绘制的选择器文件
<!-- <item android:drawable="@color/android:transparent" android:state_selected="true" /> -->
<item android:drawable="@color/list_bg" android:state_selected="true"/>
<item android:drawable="@color/list_bg" android:state_activated="true"/>
<item android:drawable="@color/transparent"/>