BaseAdapter<T> 重写 createViewFromResource实现界面,刷新,加载,移除
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 com.lidroid.xutils.util.LogUtils; /**
* 基本的适配器,重写 createViewFromResource实现界面
*
* @author HZY
*
* @param <T>
* list存放的实体
*/
public class BaseAdapter<T> extends android.widget.BaseAdapter {
private Context mContext;
private LayoutInflater mInflater;
private List<T> mDatas = new ArrayList<T>(); public BaseAdapter(Context mContext, List<T> mDatas) {
this.mContext = mContext;
this.mDatas = mDatas;
this.mInflater = LayoutInflater.from(mContext);
} public Context getContext() {
return this.mContext;
} public LayoutInflater getLayoutInflater() {
return this.mInflater;
} /**
* 刷新 * @param mDatas
*/
public void refresh(List<T> mDatas) {
if (mDatas != null) {
LogUtils.d("size=>" + mDatas.size());
}
this.mDatas = mDatas;
notifyDataSetChanged();
} /**
* 加载更多 * @param mDatas
*/
public void loadMore(List<T> mDatas) {
if (mDatas == null) {
this.mDatas = mDatas;
} else {
this.mDatas.addAll(mDatas);
} notifyDataSetChanged();
} /**
* 移除 * @param date
*/
public void remove(T date) {
if (mDatas != null) {
mDatas.remove(date);
notifyDataSetChanged();
}
} /**
* 移除 * @param position
*/
public void remove(int position) {
if (mDatas != null && mDatas.size() > position) {
mDatas.remove(position);
notifyDataSetChanged();
}
} @Override
public int getCount() {
return mDatas == null ? 0 : mDatas.size();
} @Override
public Object getItem(int position) {
return mDatas == null ? null : mDatas.get(position);
} @Override
public long getItemId(int position) {
return position;
} @Override
public View getView(int position, View convertView, ViewGroup parent) {
return createViewFromResource(position, convertView, parent);
} protected View createViewFromResource(int position, View convertView,
ViewGroup parent) {
// TODO Auto-generated method stub
return null;
} }
BaseAdapter<T> 重写 createViewFromResource实现界面,刷新,加载,移除的更多相关文章
- Android UI--自定义ListView(实现下拉刷新+加载更多)
Android UI--自定义ListView(实现下拉刷新+加载更多) 关于实现ListView下拉刷新和加载更多的实现,我想网上一搜就一堆.不过我就没发现比较实用的,要不就是实现起来太复杂,要不就 ...
- 分页插件思想:pc加载更多功能和移动端下拉刷新加载数据
感觉一个人玩lol也没意思了,玩会手机,看到这个下拉刷新功能就写了这个demo! 这个demo写的比较随意,咱不能当做插件使用,基本思想是没问题的,要用就自己封装吧! 直接上代码分析下吧! 布局: & ...
- ListView 刷新加载控件
1.MaterialRefreshLayout刷新加载: 导入依赖: compile 'com.cjj.materialrefeshlayout:library:1.3.0' 布局 <com.c ...
- jQuery Pjax – 页面无刷新加载,优化用户体验
pjax 是 HTML5 pushState 以及 Ajax 两项技术的简称,综合这两个技术可以实现在不刷新页面的情况下载入 HTML 到当前网页,带给你超快速的浏览器体验,而且有固定链接.标题以及后 ...
- 界面动态加载时报NullPointException
今天在做环境监测的模拟软件时,登陆页面报NullPointException 一般像我们初始化Button时,是Button btn=(Button)findViewById(R.id.button1 ...
- 移动端tab滑动和上下拉刷新加载
移动端tab滑动和上下拉刷新加载 查看demo(请在移动端模式下查看) 查看代码 开发该插件的初衷是,在做一个项目时发现现在实现移动端tab滑动的插件大多基于swiper,swiper的功能太强大而我 ...
- android 在自定义的listview(有刷新加载项)列表中,数据过少时不能铺满整个屏幕时,header和footer同时显示问题
android 在自定义的listview(有刷新加载项)列表中,数据过少时,当刷新时,加载项也会显示,这是很头疼的一个问题,查阅了一些资料,总结了一个比较不错的方法: 原来代码: @Overrid ...
- js中对arry数组的各种操作小结 瀑布流AJAX无刷新加载数据列表--当页面滚动到Id时再继续加载数据 web前端url传递值 js加密解密 HTML中让表单input等文本框为只读不可编辑的方法 js监听用户的键盘敲击事件,兼容各大主流浏览器 HTML特殊字符
js中对arry数组的各种操作小结 最近工作比较轻松,于是就花时间从头到尾的对js进行了详细的学习和复习,在看书的过程中,发现自己平时在做项目的过程中有很多地方想得不过全面,写的不够合理,所以说啊 ...
- emlog通过pjax实现无刷新加载网页--完美解决cnzz统计和javascript失效问题
想要更详细了解pjax,需要查看官网 或者看本站文章:jQuery.pjax.js:使用AJAX和pushState无刷新加载网页(官网教程中文翻译) 效果看本站,音乐无刷新播放,代码高亮和复制js加 ...
随机推荐
- linux配置java环境变量(详细) [转]
一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586.bin 这时会出现一段协议,连继敲回车, ...
- 禁止IE7的页面缩放功能
注册表键 HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/Zoom 下, 设置DWORD 值 ZoomDisabled 等于 1. 如 ...
- mybatis 映射器
1 映射器 Mapper 是由java接口和 XML 文件共同组成.它的作用如下 1)定义参数类型 2)描述缓存 3)描述 SQL 语句 4)定义查询结果和POJO的映射关系 2 SqlSession ...
- java中long型时间戳的计算
计算时间的时候碰到的问题: Date d = new Date(); long currtime = d.getTime(); //获取当前时间 long starttime = currtime - ...
- Redis(十九):Redis压力测试工具benchmark
redis-benchmark使用参数介绍 Redis 自带了一个叫 redis-benchmark 的工具来模拟 N 个客户端同时发出 M 个请求. (类似于 Apache ab 程序).你可以使用 ...
- atitit.获取connection hibernate4
atitit.获取connection hibernate4 1. SessionFactoryUtils法(推荐) 1 2. ConnectionProvider 法( ) 1 3. 嘎自实现法(不 ...
- atitit.GUI图片非规则按钮跟动态图片切换的实现模式总结java .net c# c++ web html js
atitit.GUI图片非规则按钮跟动态图片切换的实现模式总结java .net c# c++ web html js 1. 图片按钮的效果总结 1 1.1. 按钮图片自动缩放的. 1 1.2. 不要 ...
- UIView总结
转自:http://langhua9527.iteye.com/blog/1377741 如果想调用某个类的某个方法可以写成这样,这个方法来自NSObject类 performSelector: pe ...
- cygwin 运行java的一些记录
javac编译没问题,但是java执行就不行,处理方式如下 其实就是把宿主机下的java.exe在cygwin下搞一个快捷方式 关于路径问题,可以使用cygpath命令进行宿主机和cygwin间的转换 ...
- zookeeper单节点windows下安装
由于需要在windows下面安装zookeeper,故做个整理 1.下载zookeeper http://mirrors.hust.edu.cn/apache/zookeeper/ 2.解压 3.修改 ...