Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何使用截图在列表视图中显示图像?_Android - Fatal编程技术网

Android 如何使用截图在列表视图中显示图像?

Android 如何使用截图在列表视图中显示图像?,android,Android,当我们从数据库中获取图像并希望在带有标题和描述的listView中显示它们时,会出现问题 //我们首先从数据库抛出Json对象获取图像 map= new HashMap<String, Object>(); String encoded = unProduit.getString("image"); byte[] decodedString = Base64.decode(encoded, Base64.DEFAULT); Bitmap decodedByte =

当我们从数据库中获取图像并希望在带有标题和描述的listView中显示它们时,会出现问题

//我们首先从数据库抛出Json对象获取图像

map= new HashMap<String, Object>();

   String encoded = unProduit.getString("image");
   byte[] decodedString = Base64.decode(encoded, Base64.DEFAULT);
   Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, 
   decodedString.length);
   Drawable d = new BitmapDrawable(getResources(),decodedByte);
   map.put("img", d);
// to display in listeview

    SimpleAdapter monAdapter = new SimpleAdapter (Activity_Recherche_produit.this, tabProduits, R.layout.layout_produit_listview,
 new String[] {"img", "mnom", "mville","mdate" },
 new int[] {R.id.img, R.id.idnomprod, R.id.idville,R.id.iddate});

But when we set image to imageView , it works 
map=newhashmap();
字符串编码=unpuuit.getString(“图像”);
字节[]decodedString=Base64.decode(编码,Base64.DEFAULT);
位图decodedByte=BitmapFactory.decodeByteArray(decodedString,0,
解码字符串(长度);
Drawable d=新的位图Drawable(getResources(),decodedByte);
地图放置(“img”,d);
//在列表视图中显示
SimpleAdapter monAdapter=新的SimpleAdapter(活动\u Recherche\u produit.this,选项卡produits,R.layout.layout\u produit\u列表视图,
新字符串[]{“img”、“mnom”、“mville”、“mdate”},
新int[]{R.id.img,R.id.idnomprod,R.id.idville,R.id.iddate});
但当我们将image设置为imageView时,它就起作用了

多亏了截击,你才能检索到你的图像,为什么不检索标题和描述

您需要一个布局(我们称之为layoutImage)来表示列表中的项目,因此您的布局应该有一个图像视图来表示图像,一个文本视图来表示标题,一个文本视图来表示说明

我的建议是创建一个适配器

ImageListAdapter imageListAdapter = new ImageListAdapter(layoutImage, ...)
使用ArrayAdapter的子类ImageListAdapter,您在其中描述了UI

public class ImageListAdapter<T> extends ArrayAdapter<T> {
    @Override
    public View getCustomView(int position, View convertView, ViewGroup parent) { ...
    Bitmap mBitmap = BitmapFactory.decodeFile(fileimage);
    imageView.setImageBitmap(mBitmap);
    ... }
}
当然,ListView是必需的:

ListView listView = findViewById(R.id.listviewimages);
listView.setAdapter(adapter);
您甚至可以指定选择图像时发生的情况

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            ...
        }
    });
listView.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
...
}
});
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            ...
        }
    });