Android ListView:单击后如何更改单元格?

Android ListView:单击后如何更改单元格?,android,listview,cell,Android,Listview,Cell,我有一个列表视图,包含不同类型的单元格,我使用ArrayAdapter来实现 private class MyAdapter extends ArrayAdapter<String> { public MyAdapter(Context context, int resource, int textViewResourceId, String[] objects) { super(context, resource, textViewResour

我有一个列表视图,包含不同类型的单元格,我使用ArrayAdapter来实现

private class MyAdapter extends ArrayAdapter<String>
{   
    public MyAdapter(Context context, int resource, int textViewResourceId, String[] objects)
    {
        super(context, resource, textViewResourceId, objects);
    }

    @Override
    public View getView(int position, View view, ViewGroup parent)
    {
        View viewCE = inflater.inflate(R.layout.my_cell, parent, false);
        ((TextView) viewCE.findViewById(R.id.txt_cell)).setText(adapter.getItem(position));
        view = viewCE;
        return view;
    }
}
私有类MyAdapter扩展了ArrayAdapter
{   
公共MyAdapter(上下文上下文、int资源、int textViewResourceId、字符串[]对象)
{
超级(上下文、资源、textViewResourceId、对象);
}
@凌驾
公共视图getView(内部位置、视图视图、视图组父视图)
{
View viewCE=充气机。充气(R.layout.my_单元格,父单元格,false);
((TextView)viewCE.findviewbyd(R.id.txt_cell)).setText(adapter.getItem(position));
视图=视图;
返回视图;
}
}
my_cell
包含一个ImageView,我要做的是在用户单击单元格时更改此ImageView的图像

我已经在代码中添加了一个私有类,该类使用其方法
onItemClick()
实现了
onItemClick listener
,但是我完全不知道该怎么做


感谢您的帮助。

如果您希望以不同于onClick of列表项的方式处理ImageView上的单击事件,可以向ImageView添加单独的onClick侦听器,如下所示:

imageView.setOnClickListener(new OnClickListener(){

        @Override
        public void onClick(View v) {
            // Change the image

        }

    });

onItemCLick
回调中,参数
view
正是包含您的
imageView
的视图,因此您可以通过id找到它,然后对其进行更改,示例代码如下:

list.setOnItemClickListener(new OnItemClickListener() {

    @Override
    public void onItemClick(AdapterView<?> parent, View view,
        int position, long id) {
        ImageView image = ((ImageView) viewCE.findViewById(R.id.your_image_id));
        //do something by yourself
    }
}
list.setOnItemClickListener(新的OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父级、视图、,
内部位置,长id){
ImageView image=((ImageView)viewCE.findviewbyd(R.id.your_image_id));
//自己做点什么
}
}

输入完整的代码。我在适配器中看不到任何imageview。这是因为当我创建视图时,使用的图像总是相同的,所以我在XML文件中定义它,而不是在适配器中。