位置: 编程技术 - 正文

BaseAdapter数据刷新,自定义BaseAdapter

编辑:rootadmin

推荐整理分享BaseAdapter数据刷新,自定义BaseAdapter,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

在网上的视频看到的一个很好用的自定义BaseAdapter,自己修改了一下后一直在用,分享给大家,这样的话绑定gridView或listView就方便多了,直接在adapter里面初始化数据源,十分的方便,希望对大家有用,有可以改进的地方大家一起讨论

在自定义的BaseAdapter中绑定数据源,数据源为泛型

代码:

文件名:McxBaseAdapter.java

import java.util.ArrayList;import java.util.List;import android.content.Context;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;/** * Adapter基本类 * * @project NewSilkRoad * @author MCX * @date -4- * @time 下午2:: * @param <T> */public abstract class McxBaseAdapter<T> extends BaseAdapter {public McxBaseAdapter(Context context, int resid) {this.context = context;listCellId = resid;}private Context context;private int listCellId = 0;public Context getContext() {return context;}// 数据源private List<T> myList = new ArrayList<T>();public void add(T item) {myList.add(item);}public void remove(int position) {myList.remove(position);}public void removeLast() {remove(myList.size() - 1);}@Overridepublic int getCount() {return myList.size();}@Overridepublic T getItem(int position) {return myList.get(position);}@Overridepublic long getItemId(int position) {return position;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {if (convertView == null) {convertView = LayoutInflater.from(getContext()).inflate(listCellId,null);}initListCell(position, convertView, parent);return convertView;}protected abstract void initListCell(int position, View listCell,ViewGroup parent);}

使用方法:

activity中:

private GridView gv_group_tour;

private McxBaseAdapter<GroupTour> adapter; //GroupTour为自定义的数据类型

BaseAdapter数据刷新,自定义BaseAdapter

@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);

setContentView(R.layout.activity_group_tour);initView();//初始化方法initEvent();//初始化事件}

private void initEvent() {//绑定adaptergv_group_tour.setAdapter(adapter);//添加数据,根据自定义的model添加数据,也可改成解析后的数据源,然后进行匹配即可adapter.add(new GroupTour("aa", "bb", "", "","--至-", R.drawable.im_ztydatu1,R.drawable.btn_segeren));

}

private void initView() {gv_group_tour = (GridView) findViewById(R.id.gv_group_tour);//初始化自定义的McxBaseAdapter,R.layout.activity_group_tour_gv_cell为gridview的item样式adapter = new McxBaseAdapter<GroupTour>(GroupTourActivity.this,R.layout.activity_group_tour_gv_cell) {@Overrideprotected void initListCell(int position, View listCell,ViewGroup parent) {

//初始化数据源GroupTour data = getItem(position);//初始化activity_group_tour_gv_cell中的控件,并从数据源中添加数据,下面同理LinearLayout ly_img = (LinearLayout) listCell.findViewById(R.id.ly_group_tour_img);ly_img.setBackgroundResource(data.getImg());ImageView img_head = (ImageView) listCell.findViewById(R.id.img_group_tour_headimg);img_head.setBackgroundResource(data.getHeadimg());TextView tv_title = (TextView) listCell.findViewById(R.id.tv_group_tour_title);tv_title.setText(data.getTitle());TextView tv_username = (TextView) listCell.findViewById(R.id.tv_group_tour_username);tv_username.setText(data.getUsername());TextView tv_number = (TextView) listCell.findViewById(R.id.tv_group_tour_number);tv_number.setText(data.getNumber());TextView tv_money = (TextView) listCell.findViewById(R.id.tv_group_tour_money);tv_money.setText(data.getMoney());TextView tv_time = (TextView) listCell.findViewById(R.id.tv_group_tour_time);tv_time.setText(data.getTime());}};}

自定义的model:

文件名:GroupTour.java

public class GroupTour {public GroupTour(String title, String username, String number,String money, String time, int img, int headimg) {this.title = title;this.username = username;this.number = number;this.money = money;this.time = time;this.img = img;this.headimg = headimg;}private String title;private String username;private String number;private String money;private String time;private int img;private int headimg;public int getHeadimg() {return headimg;}public void setHeadimg(int headimg) {this.headimg = headimg;}public String getTitle() {return title;}public void setTitle(String title) {this.title = title;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getNumber() {return number;}public void setNumber(String number) {this.number = number;}public String getMoney() {return money;}public void setMoney(String money) {this.money = money;}public String getTime() {return time;}public void setTime(String time) {this.time = time;}public int getImg() {return img;}public void setImg(int img) {this.img = img;}}

IndicatorTabBar——可滑动的带指示条的TabBar 这篇文字给大家分享一个可以滑动的TabBar,这里叫做IndicatorTabBar。先上效果图:诸如网易新闻、腾讯新闻、百度新闻等客户端,都使用了类的TabBar,这

insmod: init_module &#;hello.ko&#; failed (Exec format error) 在经过重新编译的goldfish内核上,已经运行了安卓模拟器,正在动态添加自己编译的内核。一开始的时候我从网上找了个hello.c文件,按照他的方式写了Ma

Android系统触屏事件传递派发浅析 之前浅显的看过事件传递的过程,但是有一些细节还是不太清除,借这次机会,可以好好的整理一下之前没有想清楚的地方.(基于android5.0源码),记录一下事

标签: BaseAdapter数据刷新,自定义BaseAdapter

本文链接地址:https://www.jiuchutong.com/biancheng/379720.html 转载请保留说明!

上一篇:使用ObjectAnimator或者ValueAnimator来为控件使用动画(使用权资产)

下一篇:IndicatorTabBar——可滑动的带指示条的TabBar

  • 房产税税额怎么算
  • 暴利税怎么计算
  • 固定资产本期发生额怎么算
  • 教育培训行业税负率是多少
  • 销售收入计入其他应付款
  • 股权变更前账务怎么处理
  • 小规模纳税人开专票税率是1%还是3%
  • 商标注册费用计入会计科目二级
  • 12月份的收入1月份开具发票,报税时免税吗
  • 待处理财产损益借贷方向
  • 多扣社保个人部分怎么做分录
  • 车间设备的维修费用什么科目
  • 一个月怎么控制花一千块
  • 固定资产赔偿制度
  • 2019年煤炭
  • 价外费用的会计和税务处理
  • 工商年报纳税总额是应缴还是实缴
  • 事业单位购买固定资产如何记账
  • 生产企业出口退税全部流程
  • 新企业购买金税盘
  • 建筑行业项目部会计要做什么
  • 电脑中毒蓝屏了怎么办修复
  • PHP:apache_response_headers()的用法_Apache函数
  • PHP:Memcached::quit()的用法_Memcached类
  • 最大交易笔数什么意思
  • 普通发票作废后能取消作废吗
  • 赫尔辛基哈加赫利亚大学
  • vue2路由跳转页面不刷新问题
  • 收到国税退回的发票
  • rsync连接
  • 年报企业所得税的分录怎么做
  • 为什么营业成本比营业收入大的时候没有计提减值准备呢
  • 个税查询和实发工资不符合
  • 劳务报酬根据什么确定
  • 顺丰的电子发票是不是只有收到以后能开
  • mysql终端操作
  • mysql存储引擎的作用
  • 实收资本一定要到账吗
  • 纸质专票红冲
  • 资源税会计科目
  • 投资者向企业投入资本的形式
  • 什么计入其他收入
  • 投资房地产的后续计量有哪几种模式
  • 月末应交增值税借方余额期末该怎么处理
  • 委托代理进口账务处理
  • 关于事业支出期末的结转
  • 企业发生的开办费用计入营业外支出账户
  • 申请个税退税账号是什么
  • 购买用品开专票怎么入账
  • 融资开票是什么意思
  • 人力资源差额税率
  • 公司员工报销油费
  • 广告制作费属于现代服务吗
  • sqlserver开启远程
  • 编写高质量代码改善JAVA程序的151个建议
  • mysql 备份和恢复
  • sql实现分组查询的短语
  • sqlserver 索引
  • Mysql使用insert插入多条记录 批量新增数据
  • microsoft window vista
  • centos搭建svn服务器
  • centos vim编辑器
  • windows怎样设置
  • ps1是什么文件
  • w10消费者版本和专业版区别
  • win8显示屏亮度调节
  • 雷柏7100p怎么样
  • css各种滤镜的应用是什么
  • jquery动态设置css
  • 基于flask的开源项目
  • javascript运用
  • shell while 小于
  • 深入php面向对象、模式与实践第5版 电子书
  • python中如何抛出异常
  • 叉车需要手续吗
  • 新车购置税是多少
  • 国家税务网站官网
  • 出口退税备案表享受增值税优惠政策
  • 加油发票如何抵扣
  • 海南省地税官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设