Android ListView SimpleAdapter支持Bitmap类型图片显示
// 处理simpleAdapter中包括bitmap类型
adapter.setViewBinder(new ViewBinder() {
public boolean setViewValue(View view, Object data,
String textRepresentation) {
if (view instanceof ImageView && data instanceof Bitmap) {
ImageView image = (ImageView) view;
image.setImageBitmap((Bitmap) data);
return true;
}
return false;
}
});
完整示例如下:
listData = this.GetPersonalData();
adapter = new SimpleAdapter(this, listData,
R.layout.personal_list_item, new String[] { "label", "image",
"arrows", "value" }, new int[] { R.id.personal_label,
R.id.personal_img, R.id.list_arrows,
R.id.personal_value }); // 处理simpleAdapter中包括bitmap类型
adapter.setViewBinder(new ViewBinder() {
public boolean setViewValue(View view, Object data,
String textRepresentation) {
if (view instanceof ImageView && data instanceof Bitmap) {
ImageView image = (ImageView) view;
image.setImageBitmap((Bitmap) data);
return true;
}
return false;
}
}); mainListView.setAdapter(adapter);
private List<Map<String, Object>> GetPersonalData() {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> map = new HashMap<String, Object>();
map.put("label",
this.getResources().getString(R.string.personal_headphoto));
map.put("image",
preferences.getString("photo", null) == null ? R.drawable.head
: this.StringToBitMap(preferences.getString("photo",
null)));//经过上述view.setViewBing之后在put值的时候就可以直接加入BitMap类型图片进行显示了
map.put("arrows", R.drawable.arrows_right);
list.add(map);
map = new HashMap<String, Object>();
map.put("label", this.getResources().getString(R.string.personal_name));
map.put("value", "APP测试");
list.add(map);
map = new HashMap<String, Object>();
map.put("label",
this.getResources().getString(R.string.personal_username));
map.put("value", "xxx");
list.add(map);
map = new HashMap<String, Object>();
map.put("label",
this.getResources().getString(R.string.personal_disease));
map.put("value", preferences.getString("disease", "无"));
map.put("arrows", R.drawable.arrows_right);
list.add(map);
return list;
}
注:着色部分意思为图片资源我用的base64所以这里边我转化了一下。
Android ListView SimpleAdapter支持Bitmap类型图片显示的更多相关文章
- Android ListView分页加载时图片显示问题
场景:Android ListView需要分页加载,每个item中会有图片,图片又是从网络下载的. 问题:在滑动加载下一页时,上一页的图片明明已经下载完成了,但是无法显示出来. Bug重现: 1,加载 ...
- Android -- ListView(SimpleAdapter) 自定义适配器
aaarticlea/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBA ...
- android ListView SimpleAdapter 带图片
main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xml ...
- android listview的HeadView左右切换图片(仿新浪,网易,百度等切换图片)
首先我们还是看一些示例:(网易,新浪,百度) 显示效果都不错,可是手感就不一样了,百度最棒,网易还行,新浪就操作很不好,这里我说的是滑动切换图片.自己可以测试一下.不得不说牛叉的公司确实有哦牛叉的道理 ...
- 【转】Android android listview的HeadView左右切换图片(仿新浪,网易,百度等切换图片)
首先我们还是看一些示例:(网易,新浪,百度) 下面我简单的介绍下实现方法:其实就是listview addHeaderView.只不过这个view是一个可以切换图片的view,至于这个vie ...
- Android listView如何判断数据多屏显示 (2012-03-06 09:47:04)
@Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int tot ...
- Java乔晓松-android中调用系统拍照功能并显示拍照的图片
android中调用系统拍照功能并显示拍照的图片 如果你是拍照完,利用onActivityResult获取data数据,把data数据转换成Bitmap数据,这样获取到的图片,是拍照的照片的缩略图 代 ...
- Android ListView异步载入图片乱序问题,原因分析及解决方式
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/45586553 在Android全部系统自带的控件其中,ListView这个控件算是 ...
- AndroidListview 滑动过程中图片显示重复错乱解决方案
主要分析Android中Listview滚动过程造成的图片显示重复.错乱.闪烁的原因及解决方法,顺便跟进Listview的缓存机制. 1.原因分析 Listview item 缓存机制:为了使得性能更 ...
随机推荐
- Cisco Anyconnect Secure Mobility Client
Backup 进入安装文件目录cd anyconnect-3.1.00495/binary 安装sudo./vpnsetup.sh 查看安装情况ps aux | grep cisco 在搜索中, ...
- IOS 如何选择delegate、notification、KVO?
IOS 如何选择delegate.notification.KVO? 博客分类: IOS 前面分别讲了delegate.notification和KVO的实现原理,以及实际使用步骤,我们心中不禁有 ...
- windows上putty访问ubuntu
1. Ubuntu中安装ssh-server实现远程登录 a) 安装:sudo apt-get install openssh-server b) 开启服务:sudo /etc/init.d/ssh ...
- 通过设计让APP变快的6个方法
我们都知道不管网页还是移动应用,响应速度都是最重要的体验指标之一,并且移动应用的网络环境不稳定,速度的体验显得尤为重要.其实速度优化不仅是程序员的事,设计,也能够让APP变得更快. 1. 后台执行 这 ...
- ISO7816通讯协议在工控主板EM9160中的实现方案
在新的国家电网智能终端相关标准中,规定了通过专门的加密芯片来保证设备数据安全性的方法,而设备主控单元与加密芯片采用了广泛应用的ISO7816通讯协议.工控主板EM9160为了适应这一新的技术需求,对其 ...
- win10系统加载ahci驱动的操作方案(Win10之家)
win10系统使用的过程中很多用户会想要加载ahci驱动,但是大部分用户根本不知道怎么操作加载ahci驱动,这样的话很多用户会遇到一些问题,那如果使用的过程中想要加载ahci驱动的话我们应该怎么操作呢 ...
- Linux企业级项目实践之网络爬虫(17)——存储页面
在爬虫系统中数据的流量相当大,要处理的数据内容不仅包括爬虫系统的各种数据结构空间,而且包括从外部节点中得到的各种数据,比如HTTP请求,HTML页面,ROBOT.TXT等等.如果对这些内容处理不当,那 ...
- cf492E Vanya and Field
E. Vanya and Field time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- c语言sizeof与strlen的区别
#include <stdio.h> #include <stdlib.h> #include <string.h> //strlen与sizeof的区别 //st ...
- mysql 存储过程 计算报表
把用例执行情况mysql表汇总起来 proc_write_report 汇总执行用例表中的测试数据 写入report 表,report表包括字段 report_id(自增)execution_flag ...