Android视频播放项目总结之 适配器绑定视频信息列表显示到界面(适配器简单优化)
2015-05-01 07:37
681 查看
<span style="font-size:18px;">public class MyBaseAdapter extends BaseAdapter { List<VideoItem> mydata; Context context; LayoutInflater inflater; Utils utils = null; /** * 构造方法用来传递数据 * */ public MyBaseAdapter(List<VideoItem> mydata, Context context) { this.mydata = mydata; this.context = context; utils = new Utils(); } /** * 需要返回 集合中 数据的个数 * */ @Override public int getCount() { return mydata.size(); } /** * position 位置上 绑定的数据 * */ @Override public Object getItem(int position) { // TODO Auto-generated method stub return mydata.get(position); } @Override public long getItemId(int position) { return position; } /** * 返回一个 绑定好数据的 条目对象 (视图对象) * */ @Override public View getView(int position, View convertView, ViewGroup parent) { View view; ViewHolder holder; if (convertView != null) { view = convertView; holder = (ViewHolder) view.getTag(); } else { //获得布局填充器对象 inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); //把布局转化成布局对象 view = inflater.inflate(R.layout.activity_videolist_items, null); holder = new ViewHolder(); //找到布局对象中的控件 holder.videolist_items_iv_name = (TextView) view .findViewById(R.id.videolist_items_iv_name); holder.videolist_items_iv_duration = (TextView) view .findViewById(R.id.videolist_items_iv_duration); holder.videolist_items_iv_size = (TextView) view .findViewById(R.id.videolist_items_iv_size); view.setTag(holder); } //找到数据 VideoItem item = mydata.get(position); String name = item.getName().toString(); String duration = utils.stringForTime((int) item.getDuration());//转化成时分 String size = Formatter.formatFileSize(context, item.getSize());//转化成M // //把数据放到控件上 holder.videolist_items_iv_name.setText(name); holder.videolist_items_iv_duration.setText(duration); holder.videolist_items_iv_size.setText(size); return view; } /** * 把控件保存在ViewHolder类的成员变量中,不需要重复在初始化 */ static class ViewHolder { TextView videolist_items_iv_name; TextView videolist_items_iv_duration; TextView videolist_items_iv_size; } }</span>
这种绑定数据的写法,效率很高,所以我单独写了一个例子代码地址:
http://download.csdn.net/detail/zhaihaohao1/8651129
相关文章推荐
- 简单CMS项目笔记之四:信息显示(列表显示和显示具体单项)
- Android视频播放项目总结之 思路梳理
- Android视频播放项目总结之 得到手机中的所有视频数据
- Android视频播放项目总结之 把毫秒转化成时、分、秒的工具类(自己分装的)
- Android视频播放项目总结之 点击listview条目调用手机上其他的视频播放器播放
- Android视频播放项目总结之 使用VideoView定义自己的视频播放器
- Android视频播放项目总结之 让别的程序能调用我的视频播放器
- Android视频播放项目总结之 使用Android中的videoView自己定义,暂停,播放时间,总时间,进度等。
- Android视频播放项目总结之 使用第三方Vitamio库,开发万能播放器(一)
- Android视频播放项目总结之 使用第三方Vitamio库,开发万能播放器(二)
- Android视频播放项目总结之 使用第三方Vitamio库,开发万能播放器(三)
- Android视频播放项目总结之 使用第三方Vitamio库,开发万能播放器(四)
- Android视频播放项目总结之 代码分享
- Android学微信QQ聊天信息列表SimpleAdapter简单适配器
- Android项目笔记二:用户自定义保存路径+文件列表显示+权限显示
- Android使用SurfaceView播放视频 简单介绍
- Android多媒体__信息和简单的音乐播放
- Android实用笔记——使用ListView显示信息列表
- Android 使用Vitamio打造自己的万能播放器(3)――本地播放(主界面、播放列表)
- Android 使用Vitamio打造自己的万能播放器(10)―― 本地播放 (缩略图、视频信息、视频扫描服务)