2

我正在尝试使用 MyClass 中的对象填充 ListView 项。该类的属性之一是 jpg 图像。我把我的图像放在图像/文件夹中。我使用此代码填充

private static final String ASSETS_DIR = "images/";
String imgFilePath=ASSETS_DIR+r.resourceID;

    try{
    Bitmap bitmap = BitmapFactory.decodeFile(imgFilePath);
    resourceIdView.setImageBitmap(bitmap);


    }
    catch(Exception e)
    {
        System.out.println(" Error");

    }

r.resourceID 是图像的名称,例如“AUD.jpg” resourceIDView 是 ImageView 程序没有进入 catch 部分,但是我看不到图像,有人可以帮我吗?

4

4 回答 4

1

将您的图像放在可绘制文件夹中并设置为 imageview ...

 resourceIdView.setImageResource(R.drawable.AUD);
于 2012-06-01T18:06:07.317 回答
1

根据您的命名约定,我得出结论,您将图像存储在“资产”文件夹中。如果是,那么您可以使用以下代码行来解决此问题:

private static final String ASSETS_DIR = "images/";
String imgFilePath=ASSETS_DIR+r.resourceID;

try{
    Drawable d = Drawable.createFromStream(getAssets().open(imgFilePath), null);
    resourceIdView.setImageDrawable(d);
}
catch(Exception e)
{
    System.out.println(" Error");

}

希望这可以帮助。

于 2012-06-01T19:07:33.770 回答
0

您可以尝试将图像放在 /res 下的 drawable 文件夹中。使用ImageAdapter扩展BaseAdapter来填充您的 ListView。您可以使用此代码:http ://www.java2s.com/Code/Android/2D-Graphics/extendsBaseAdaptertocreateImageadapter.htm

于 2012-06-01T18:38:17.463 回答
0

我所拥有的是图像在 Designer 中显示但不在设备上,所以我将图像放在所有 drawable-xdpi 目录中。这对我有用。

于 2014-01-22T02:47:37.597 回答