0
私は2つのビューを持つリストビューを持っています.1つは最初の行で、もう1つは残りのものです。ここでandroid listview multiple views
はgetViewメソッドで私のコードです:
ViewHolder holder = null;
// if (convertView == null)
// {
holder = new ViewHolder();
if(position==0 && category.equalsIgnoreCase("normal"))
{
convertView = mInflater.inflate(R.layout.item_featured_list_row, null);
}
else
{
convertView = mInflater.inflate(R.layout.item_list_row, null);
}
holder.imgItem = (ImageView) convertView.findViewById(R.id.itemImage);
//holder.imgArrow = (ImageView) convertView.findViewById(R.id.arrowImage);
holder.txtItem = (TextView) convertView.findViewById(R.id.itemText);
holder.itemValueLabel = (TextView) convertView.findViewById(R.id.itemValueLabel);
holder.itemPrice = (TextView) convertView.findViewById(R.id.itemPrice);
convertView.setTag(holder);
// }
// else
// holder = (ViewHolder) convertView.getTag();
事はある、私はコメントを外し、それを残せば、それだけでこのように動作しますが、convertViewがnullであるかどうかを確認するための良い理由があるように私は感じ、既に膨らませたものを再膨張させない。しかし、コメントを外すと、最初の読み込み時にのみ機能します。配列を更新してnotifydatasetchangedを呼び出してリストを更新すると、最初の行項目はリストビューのランダムな場所で複数回終了します。