Android Base64转换图片,SimpleAdapter动态显示Bitmap图片
程序员文章站
2022-06-20 21:02:04
...
public Bitmap stringtoBitmap(String string){
//将字符串转换成Bitmap类型
Bitmap bitmap=null;
try {
byte[]bitmapArray;
bitmapArray=Base64.decode(string, Base64.DEFAULT);
bitmap= BitmapFactory.decodeByteArray(bitmapArray, 0, bitmapArray.length);
} catch (Exception e) {
e.printStackTrace();
}
return bitmap;
}
SimpleAdapter 默认是静态显示程序内部的本地资源;在显示网上的远程图片时,需要实现ViewBinder()接口,在里面定义数据和视图的匹配关系。
public void Search(){
List<Map<String, Object>> data = new ArrayList<Map<String,Object>>();
String photo = null;
String ret= null;
for(int i=0;i<photoList.size();i++) {
photo = String.valueOf(photoList.get(i));
String regex="photoInfo='(.*?)'";
Matcher matcher= Pattern.compile(regex).matcher(photo);
while(matcher.find()) {
ret=matcher.group(1);
}
Map<String,Object> map = new HashMap<String, Object>();
map.put("imageView1",stringtoBitmap(ret));
data.add(map);
}
SimpleAdapter simplead = new SimpleAdapter(
mContext,
data,
R.layout.photo_history_item,
new String[] { "imageView1"},
new int[] {R.id.imageView1});
//实现ViewBinder()这个接口
simplead.setViewBinder(new SimpleAdapter.ViewBinder() {
@Override
public boolean setViewValue(View view, Object data,
String textRepresentation) {
if(view instanceof ImageView && data instanceof Bitmap){
ImageView i = (ImageView)view;
i.setImageBitmap((Bitmap) data);
return true;
}
return false;
}
});
GridView1.setAdapter(simplead);
}
}
推荐阅读
-
android Bitmap转化成Base64 String 人脸识别 身份证识别 驾照识别 图片转化成String
-
Android 打印之将文字转换成 Bitmap 图片,再转换成Bytes 数组 进行打印
-
android 图片压缩,base64转换上传
-
Android把bitmap转为file类型 ,图片转base64**
-
Android 图片数据格式转换url图片地址转base64,url转Bitmap,Bitmap转base64,base64转Bitmap,ImageView 加载Bitmap,旋转图片角度
-
android 图片工具类 (图片压缩 图片长按缓存 Bitmap转Base64 Bitmap转File File转Bitmap 打开系统相册解析URI)
-
Android Base64转换图片,SimpleAdapter动态显示Bitmap图片
-
Android图片转换为Base64编码
-
android Bitmap转化成Base64 String 人脸识别 身份证识别 驾照识别 图片转化成String
-
Android 图片Bitmap,drawable,res资源图片之间转换