1、Adapter需要重写getViewTyptCount,getItemViewTypt
2、利用getItemViewTypt方法的返回值,来选择要在条目中构建的视图
/**
* @return 共有多少种条目类型
*/
@Override
public int getViewTypeCount() {
return 2;
}
/**
* 奇数条 返回 文字
* 偶数条 返回 图片加文字
* 获取条目视图类型
* @return 0代表偶数条 , 1代表技术条;
* 返回值的int 值 只能从0开始排 0 ,1,3,4,5
*/
@Override
public int getItemViewType(int position) {
return position % 2;//对2取余,返回值是0 或者1
}
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int i) {
return list.get(i);
}
@Override
public long getItemId(int i) {
return i;
}1、在getView方法中(......为省略):@Override
public View getView(int i, View view, ViewGroup viewGroup) {
int itemViewType = getItemViewType(i);
switch (itemViewType){
case 0://偶数条目 返回文字+图片条目;
ViewHolder1 holder1;
if (view==null){
view=View.inflate(getActivity(), R.layout.item1_layout,null);
holder1=new ViewHolder1();
holder1.text1=view.findViewById(R.id.text1);
view.setTag(holder1);
} else {
holder1= (ViewHolder1) view.getTag();
}
holder1.text1.setText(list.get(i).getNews_title());
......
break;
case 1:// 奇数条,只返回文字条目
ViewHolder2 holder2;
......
break;
}
return view;
}
class ViewHolder1{
private TextView text1;
......
}
class ViewHolder2{.....}
525

被折叠的 条评论
为什么被折叠?



