ListView没有以通常的方式显示

时间:2015-01-08 12:38:54

标签: android android-listview android-adapter

我想显示数据列表,一些数据包含值,其他数据包含空值。我不想在此列表中显示空值。

为此,我写了以下代码:

@Override
public View getView(int position, View convertView, ViewGroup parent) {

    View rowView = convertView;
    rowView = inflater.inflate(R.layout.attachment_adapter, parent, false);

    TextView attachment = (TextView) rowView.findViewById(R.id.attachment_text);
    attach = list.get(position);

    if(attach.recording_path.equals("null")){
        rowView.findViewById(R.id.attachment_text).setVisibility(View.GONE);
    }

    else{
        attachment.setText(attach.recording_path);
    }

}

但是当我在设备上运行时,它看起来并不常见。

enter image description here

4 个答案:

答案 0 :(得分:0)

试试这个

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    View rowView = convertView;
    rowView = inflater.inflate(R.layout.attachment_adapter, parent, false);
    TextView attachment = (TextView) rowView.findViewById(R.id.attachment_text);
    attach = list.get(position);
    
   if(attach.recording_path != null)
    {
        attachment.setText(attach.recording_path);
    }
  
}

答案 1 :(得分:0)

使用以下条件语句

if(attach.recording_path!=null))
{
    attachment.setText(attach.recording_path);
}

并删除其他条件   Thankx 如果有任何疑问,那么你可以问:)

答案 2 :(得分:0)

首先停止将recording_path添加到您的arrayList。

或者停止将空数据加载到模型中

答案 3 :(得分:0)

在适配器中设置之​​前,应从列表中删除错误的值。 适配器不应以任何方式过滤数据。