【Android】ListView滾動或者刷新後頁面顯示異常

初學Android,工程開發中常常須要用到Listview組件,吃了很多關於頁面顯示異常的虧java

諸如:ide

  • 當每條佈局文件並不一致的時候,上下兩條item佈局顯示混雜,竄樣{上面item的佈局式樣包含下面的佈局式樣}佈局

  • 每條item的顯示順序被打亂了,【1-2-3-4】可能變成了【2-3-4-1】性能

  • 當每條佈局文件並不一致的時候,可能下面圖片的內容跑到上面的item中去了code

就很少說什麼了,直接上乾貨,請看【//】註釋部分圖片

 @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder holder;
        //每次都上getView去從新繪製
        //雖然損失了部分性能,可是問題獲得瞭解決
        // if (convertView == null) {
        convertView = LayoutInflater.from(mContext).inflate(
                R.layout.adapter_circle_msg_item, null);
        holder = new ViewHolder(convertView);
        convertView.setTag(holder);
        // } else {
        // holder = (ViewHolder) convertView.getTag();
        // }
        CircleMsgItemInfo info = mInfos.get(position);
        holder.fillViewWithData(info);
        return convertView;
    }
相關文章
相關標籤/搜索