xlistView的adapter的相关操作
来源:互联网 发布:js 命名空间 编辑:程序博客网 时间:2024/05/23 19:10
使用xlistView的步骤:首先加载xlistView的三个包,最好放在一个自定义的view包,根据报的错误依次添加需要的东西例如需要item,图片,和Strings需要添加,做好准备工作这是xlistView的重点adapter需要重点关注package com.hh.test.adapter;import android.content.Context;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.ImageView;import android.widget.TextView;import com.bwie.test.MainActivity;import com.bwie.test.R;import com.bwie.test.bean.News;import com.bwie.test.xlistUtils.xlistview.XListView;import com.nostra13.universalimageloader.core.DisplayImageOptions;import com.nostra13.universalimageloader.core.ImageLoader;import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;import com.nostra13.universalimageloader.core.display.RoundedBitmapDisplayer;import java.util.List;public class MyAdapter extends BaseAdapter { private List<News.ResultBean.DataBean> data; private Context context; private final int atype = 0; private final int btype = 1; public MyAdapter(Context context, List<News.ResultBean.DataBean> data) { this.context = context; this.data = data; } @Override public int getCount() { return data.size(); } @Override public Object getItem(int i) { return data.get(i); } @Override public long getItemId(int i) { return i; } @Override public int getItemViewType(int position) { if (position % 2 == 0) { return atype; } else { return btype; } } @Override public int getViewTypeCount() { return 2; } @Override public View getView(int i, View view, ViewGroup viewGroup) {//获取当前的item int type = getItemViewType(i); ViewHolder1 viewholder1; ViewHolder2 viewHolder2; if(view == null){//使用switch判断 如果是atype进行下面操作 switch (type){ case atype: viewholder1 = new ViewHolder1(); view = View.inflate(context, R.layout.item1, null); view.setTag(viewholder1); viewholder1.tv_title1 = view.findViewById(R.id.tv_title1); viewholder1.iv1 = view.findViewById(R.id.iv1); break; case btype: viewHolder2 = new ViewHolder2(); view = View.inflate(context, R.layout.item2, null); view.setTag(viewHolder2); viewHolder2.tv_title2 = view.findViewById(R.id.tv_title2); viewHolder2.iv2 = view.findViewById(R.id.iv2); break; } }else{//赋值时也需要使用switch进行判断赋值 switch (type) { case atype: viewholder1 = (ViewHolder1) view.getTag(); viewholder1.tv_title1.setText(data.get(i).getTitle()); ImageLoader.getInstance().displayImage(data.get(i).getThumbnail_pic_s(), viewholder1.iv1); break; case btype: viewHolder2 = (ViewHolder2) view.getTag(); viewHolder2.tv_title2.setText(data.get(i).getTitle()); ImageLoader.getInstance().displayImage(data.get(i).getThumbnail_pic_s(), viewHolder2.iv2); break; } } return view; } public class ViewHolder1{ public ImageView iv1; public TextView tv_title1; } public class ViewHolder2{ public ImageView iv2; public TextView tv_title2; }}注意:该adapter为xlistView的,标红的为注意事项,需要特别关注,定义变量时最后从0开始。
阅读全文
0 0
- xlistView的adapter的相关操作
- xlistview相关操作
- Android类库--与Adapter相关的类
- xlistview的使用
- xListView的使用步骤
- Xlistview的滚动控制
- xlistview用到的方法
- xlistview的写法
- XLIstView的使用
- XListView 的配置
- XlistView的使用方法
- XListView的布局
- XlistView的使用
- XListView的使用
- XListView的使用方法
- XListView的使用方法
- XListView的简单Demo
- XListView的简单示例
- svg 例子
- (并查集)More is better--HDOJ
- 最小二乘法c实现
- pandas入门——数据缺失值处理
- jQuery-(3)事件
- xlistView的adapter的相关操作
- 博弈-HDU2897
- shell脚本解压多个文件
- java调用Python脚本
- 传递表达式(pass-through lambdas)的替代方案
- HTTP 协议详解
- easyUI修改信息时表单输入框的默认值
- 如何删除表中的重复数据
- 2017 Multi-University Training Contest