在listview的第一个item可以加载不同数量的图片和内容,类似qq空间里面的发表的图片说说,根据图片数量不同,界面显示就不同。

------解决方案--------------------
重写ListView的Adapter(可以继承BaseAdapter),重写getView方法,根据getView方法里面的position分别infater不同的布局
------解决方案--------------------
楼上讲的很好!你可以在geiView方法里生成linearlayout,根据需要往linearlayout添加控件,最后return linearlayout控件
------解决方案--------------------
在geiView中加载不同的布局
------解决方案--------------------
有个函数 getItemViewType(int position) ;不错。
@Override
public intgetItemViewType(int position) {
if (DATA[pos].type == 0) {
return 0;
} else {
return 1;
}
}
@Override
public int getViewTypeCount() {
return 2;
}
@Override
public View getView(int position, View convertView, ViewGroup arg2) {
TitleViewHolder titleHolder;
InfoViewHolder infoHolder;
int type = getItemViewType(position);
if (convertView == null) {
switch (type) {
case 0:
convertView = mInflater.inflate(R.layout.item_view, null);
titleHolder = new TitleViewHolder();
titleHolder.titleTextView = (TextView) convertView.findViewById(R.id.text);
titleHolder.iconImageView = (ImageView) convertView.findViewById(R.id.icon);
convertView.setTag(titleHolder);
break;
case 1:
convertView = mInflater.inflate(R.layout.item_view2, null);
infoHolder = new InfoViewHolder();
infoHolder.titleTextView = (TextView) convertView.findViewById(R.id.text);
convertView.setTag(infoHolder);
break;
}
} else {
switch (type) {
case 0:
titleHolder = (TitleViewHolder) convertView.getTag();
break;
case 1:
infoHolder = (InfoViewHolder) convertView.getTag();
break;
}
}
switch (type) {
case 0:
titleHolder.titleTextView.setText(DATA[pos].title);
break;
case 1:
infoHolder.titleTextView.setText(DATA[pos].title);
infoHolder.iconImageView.setImageBitmap(DATA[pos].bitmap);
break;
}
return convertView;
}
static class TitleViewHolder {
public ImageView iconImageView;
public TextView titleTextView;