动态隐藏在视图列表视图定制Android中 [英] Dynamically hiding Views in Custom Listview in Android
本文介绍了动态隐藏在视图列表视图定制Android中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有,我有一个TextView和ImageView的自定义列表视图
现在我想隐藏或在ListView ONY一些物品显示ImageView的。
我已经这样做了使用getview的方法,但问题是,当在第一时间显示在列表视图查看没有得到隐藏,但是当我向下滚动,滚动那个时候它被隐藏。以下是code片段。先谢谢了。
公共查看getView(INT位置,查看convertView,父母的ViewGroup){
视图V = super.getView(位置,convertView,父母);
ViewHolder持有人;
如果(V = convertView和放大器;!&安培;!V = NULL){
持有人=新ViewHolder();
convertView = mInflater.inflate(R.layout.jazzartist,NULL);
holder.albumsView =(TextView中)convertView.findViewById(R.id.artist_albums_textview);
v.setTag(保持器);
}
其他{
支架=(ViewHolder)convertView.getTag(); } ViewHolder holder1 =(ViewHolder)v.getTag();
holder1.objimg =(ImageView的)convertView.findViewById(R.id.drag);
如果(位置== 4){ (holder1.objimg).setVisibility(View.INVISIBLE); //我在这里藏身的ImageView为4位 }
其他
{ (holder1.objimg).setVisibility(View.VISIBLE); //我在这里展示的物品的其余部分的ImageView
}
字符串专辑=的getItem(位置).albums; holder1.albumsView.setText(专辑); 返回伏;
}
} }
解决方案
尝试下面code。希望它能帮助
ViewHolder持有人;
如果(convertView == NULL)
{
持有人=新ViewHolder();
convertView = mInflater.inflate(R.layout.jazzartist,NULL);
holder.albumsView =(TextView中)convertView.findViewById(R.id.artist_albums_textview);
holder.objimg =(ImageView的)convertView.findViewById(R.id.drag);
convertView.setTag(保持器);
}
其他
{
支架=(ViewHolder)convertView.getTag();
} 如果(位置== 4)
{
holder.objimg.setVisibility(View.INVISIBLE); //我在这里藏身的ImageView为4位
}
其他
{
holder.objimg.setVisibility(View.VISIBLE); //我在这里展示的物品的其余部分的ImageView
} 字符串专辑=的getItem(位置).albums;
holder.albumsView.setText(专辑); 返回convertView;
I have a custom listview in which I have a Textview and Imageview now I want to hide or display the Imageview for some Items in the Listview ony.
I have done this using getview method but the problem is that when the Listview is displayed at first time the View does not get hide but when I scroll down and scroll up that time it gets hidden. following is the code snippet. Thanks in advance.
public View getView(int position, View convertView, ViewGroup parent) {
View v = super.getView(position, convertView, parent);
ViewHolder holder;
if (v != convertView && v != null) {
holder = new ViewHolder();
convertView = mInflater.inflate(R.layout.jazzartist, null);
holder.albumsView = (TextView)convertView.findViewById(R.id.artist_albums_textview);
v.setTag(holder);
}
else{
holder = (ViewHolder) convertView.getTag(); }
ViewHolder holder1 = (ViewHolder) v.getTag();
holder1.objimg = (ImageView)convertView.findViewById(R.id.drag);
if(position == 4){
(holder1.objimg).setVisibility(View.INVISIBLE); // here I am hiding Imageview for position 4
}
else
{
(holder1.objimg).setVisibility(View.VISIBLE); // here I am showing Imageview for rest of items
}
String albums = getItem(position).albums;
holder1.albumsView.setText(albums);
return v;
}
}
}
解决方案
Try below code. Hope it helps
ViewHolder holder;
if(convertView == null)
{
holder = new ViewHolder();
convertView = mInflater.inflate(R.layout.jazzartist, null);
holder.albumsView = (TextView)convertView.findViewById(R.id.artist_albums_textview);
holder.objimg = (ImageView)convertView.findViewById(R.id.drag);
convertView.setTag(holder);
}
else
{
holder = (ViewHolder) convertView.getTag();
}
if(position == 4)
{
holder.objimg.setVisibility(View.INVISIBLE); // here I am hiding Imageview for position 4
}
else
{
holder.objimg.setVisibility(View.VISIBLE); // here I am showing Imageview for rest of items
}
String albums = getItem(position).albums;
holder.albumsView.setText(albums);
return convertView;
这篇关于动态隐藏在视图列表视图定制Android中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文