android listView问题
ListView中的item中有ImageView(隐藏的)和TextView,当点击一个TextView是ImageView显示出来,点击另一个item时,之前的ite...
ListView中的item中有ImageView(隐藏的)和TextView,当点击一个TextView是ImageView显示出来,点击另一个item时,之前的item中的ImageView隐藏,当前item中的ImageView显示,请问怎么操作,谢谢
就是这样的效果 展开
就是这样的效果 展开
2个回答
展开全部
在ListView的BaseAdapter里面加一个 int expandIndex=-1;属性,表示需要显示图片的位置,并为其增加set和get函数;
在getView里面做判断,如果当前position等于expandIndex,则显示imageView,不等则隐藏;
@Override
public View getView(int position, View convertView, ViewGroup parent)
{
……
if(positoin == expandIndex)
{
imageView.setVisibility(View.VISIBLE);
}
else
{
imageView.setVisibility(View.INVISIBLE);
}
……
}
然后设置listview点击事件,每次点击,把被点击的位置设为expandIndex,并刷新ListVIew如下
mListView.setOnItemClickListener(new OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id)
{
mAdapter.setExpandIndex(position);
mAdapter.notifyDataSetChanged();
}
});
2013-11-25
展开全部
点击事件中设置控件的显示属性就好,如:
item.setVisibility(View.INVISIBLE);
追问
这个只能隐藏当前点击的item中的ImageView。我要的是点击当前item时隐藏之前的ImageView,显示现在的item中的ImageView
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询