getview()中的Convertview仅在Baseadapter中第一次出现null

时间:2015-07-10 12:14:22

标签: android android-layout android-fragments

我有一个要显示的客户列表。在xml中我有一个grirdview

  @Override
    public View getView(int position, View convertView, ViewGroup container) {
    String todayortomorrow;
    if (convertView == null) {
        convertView = getLayoutInflater().inflate(R.layout.customer_detail_list,
                container, false);
    }
    return convertview;
    }

在代码中,我使用客户数组填充适配器。 Baseadapter的getview看起来像下面的

=match(1,E5:M5,0)

我在活动中看到只显示一个客户。原因是转换视图仅在第一次出现时为空。第二次它不会变为空。如何显示列表中的所有客户?

1 个答案:

答案 0 :(得分:2)

  

我在活动中看到只有一个客户   显示。原因是转换视图仅在第一次出现时为空。   第二次它不会变为空。

这是正常行为。 Android会分配一个相同类型的视图池,足以填满屏幕。这样做是为了避免浪费内存(只要想想会发生什么,如果你需要显示数千行)

  

如何向所有客户展示   列表

简单快捷的解决方案是使用convertViewfindViewById布局内容并根据您的数据集设置相关信息