如何更改android中listview行中点击位置的图像和文本颜色

时间:2014-05-19 09:17:07

标签: android android-listview

任何人都可以告诉如何更改Android中ListView行中点击位置的图像和文字颜色

3 个答案:

答案 0 :(得分:1)

您需要使用为列表中的项目实现ICheckable的视图,并将背景和文本颜色设置为选择器,例如此更改文本颜色:

<selector xmlns:android="http://schemas.android.com/apk/res/android" >
   <item android:color="@android:color/white" android:state_checked="true"/>
   <item android:color="@android:color/white" android:state_pressed="true"/>
   <item android:color="@android:color/black"/>
</selector>

对于像这样的背景图像:

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

答案 1 :(得分:0)

您可以在onListItemClick侦听器上执行此操作 -

@Override
    protected void onListItemClick(ListView l, View v, int position, long id) {

     //do anything with your clicked item.
}

注意:

Android会在那里为您提供行ID作为onListItemClick()的最后一个参数。 因此id是被点击的行的ID。

答案 2 :(得分:0)

这取决于你使用它的方式,但这也可以工作..

    i.setOnItemLongClickListener(new OnItemLongClickListener() {

        @Override
        public boolean onItemLongClick(AdapterView<?> parent, View view,
                   int position, long id) {
            // TODO Auto-generated method stub

            int itemPosition = position;

           //Then here you can get the row by the (itemPosition) 
           //and then change its text and image.

            return true;    
        }

    });

如果没有您的一些代码,如何设置图像以及文本值,我无法帮助您。但这可能会帮助你开始。