-1

我有一个应用程序,其中列表视图是从数据库中填充的。

从这个数据库中,我获取一个文本和一个包含文件夹的字符串,例如 /sd-card/my-folder/image.jpg

我需要用图像和文本创建一个列表视图。

我知道所有关于 listview 适配器和其他的东西......但我不知道如何放置这个图像,因为我没有 id(比如getResources().getIdentifier("foto_"+Integer.parseInt(data_mio.getString(id_immagine)), "drawable", getPackageName()))

但只有字符串....我能得到的最大值是可绘制的:-|

        String[] from = new String[] {"photo","description"};
        int[] to = new int[] {R.id.list_image,R.id.list_content};
        final SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,R.layout.lista, data_db, from, to); 
        list_inventario.setAdapter(adapter);

有什么帮助吗?

4

4 回答 4

0

我自己建立了解决方案!很简单!

        String[] from = new String[] {"foto","descrizione"};
        int[] to = new int[] {R.id.prova,R.id.list_content};
        final SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,R.layout.lista, data_db, from, to); 
        list_inventario.setAdapter(adapter);

图像正常工作。这是满足:-)

于 2012-12-10T16:07:36.133 回答
0

listView.setImageBitmap(BitmapFactory.decodeFile(Environment.getExternalStorageDirectory()+"/path_to_file"))

于 2012-12-10T15:51:47.840 回答
0

用这个

Bitmap bitmap = BitmapFactory.decodeFile("the path");

yourview.setImageBitmap(bitmap);
于 2012-12-10T15:52:33.217 回答
0

由于您知道文件的路径,因此可以使用标准 Java I/O 类非常轻松地打开它(假设它存储在 SD 卡上,对于内部存储,您将需要使用不同的方法)。

然后,您可以像这样创建一个可绘制对象:

FileInputStream readFile = new FileInputStream("/sd-card/my-folder/image.jpg");
Drawable yourDrawable = Drawable.createFromStream(readFile, "image.jpg");

然后你就可以像往常一样使用 Drawable 了。

如果图像的路径是内部存储路径,则可以这样创建 Drawable:

Drawable yourDrawable = Drawable.createFromStream(getAssets().open("/my-folder/image.jpg"), "image.jpg");
于 2012-12-10T15:55:59.493 回答