我试图隐藏一个自定义列表适配器项目。我可以隐藏文本的可见性,但我不能掩饰整个列表项。它仍然显示了分频器等我曾尝试:
tv.setVisibility(View.INVISIBLE);
tv.setVisibility(View.GONE);
convertView.setVisibility(View.INVISIBLE);
convertView.setVisibility(View.GONE);
当我使用convertView我得到一个空指针异常。
解决方案您可以设置内容查看有没有元素。
在您的自定义适配器getView()。
如果(条件)
{
convertView = layoutInflater.inflate(R.layout.row_null,NULL);
返回convertView;
}
其他
{
convertView = layoutInflater.inflate(R.layout.row_content,NULL);
返回convertView;
}
你的XML row_null.xml
< XML版本=1.0编码=UTF-8&GT?;
< LinearLayout中的xmlns:机器人=http://schemas.android.com/apk/res/android
机器人:layout_width =match_parent
机器人:layout_height =WRAP_CONTENT>
< /的LinearLayout
I have tried to hide items in a custom list adapter. I can hide the visibility of the text but I cannot hide the whole list item. It still shows the dividers etc. I have tried:
tv.setVisibility(View.INVISIBLE);
tv.setVisibility(View.GONE);
convertView.setVisibility(View.INVISIBLE);
convertView.setVisibility(View.GONE);
When I use the convertView i get a null pointer exception.
解决方案You can set ContentView with No Element.
In getView() of Your Custom Adapter.
if(condition)
{
convertView=layoutInflater.inflate(R.layout.row_null,null);
return convertView;
}
else
{
convertView=layoutInflater.inflate(R.layout.row_content,null);
return convertView;
}
your XML row_null.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</LinearLayout