本文介绍了隐藏在ListView项目的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图隐藏一个自定义列表适配器项目。我可以隐藏文本的可见性,但我不能掩饰整个列表项。它仍然显示了分频器等我曾尝试:

  tv.setVisibility(View.INVISIBLE);
tv.setVisibility(View.GONE);
convertView.setVisibility(View.INVISIBLE);
convertView.setVisibility(View.GONE);
 

当我使用convertView我得到一个空指针异常。

解决方案
  1. 您可以设置内容查看有没有元素。

    在您的自定义适配器getView()。

     如果(条件)
    {
      convertView = layoutInflater.inflate(R.layout.row_null,NULL);
      返回convertView;
    }
    其他
    {
       convertView = layoutInflater.inflate(R.layout.row_content,NULL);
       返回convertView;
    }
     

  2. 你的XML row_null.xml

     < XML版本=1.0编码=UTF-8&GT?;
     < LinearLayout中的xmlns:机器人=htt​​p://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.

解决方案
  1. 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;
    }
    

  2. 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
    

这篇关于隐藏在ListView项目的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-21 19:59