如何根据动态可绘制名称从PNG设置图像

时间:2017-12-21 06:25:08

标签: java android

如何根据动态可绘制名称从PNG设置图像?

我使用以下代码来获取错误。

我有PNG:

R.drawable.model_1.png
R.drawable.model_2.png
... and etc

代码

try
{
    String imageName = "model_" + uv.categoryID;
    int id = context.getResources().getIdentifier(imageName, "drawable", context.getPackageName());
    imageView.setImageResource(id);
}
catch(Exception ex)
{
    Log.e(TAG, ex);
}

错误

  

尝试调用虚方法' void   android.widget.ImageView.setImageResource(INT)'在null对象上   参考

3 个答案:

答案 0 :(得分:2)

您似乎忘了bind ImageView

imageView = (ImageView) findViewById(R.id.image_view_id);

答案 1 :(得分:1)

试试这个你忘了绑定imageView

try
 {
    ImageView imageView = (ImageView) findViewById(R.id.Yourimageview);
    String imageName = "model_" + uv.categoryID;
    int id = context.getResources().getIdentifier(imageName, "drawable", context.getPackageName());
    imageView.setImageResource(id);
 }
 catch(Exception ex)
 {
     Log.e(TAG, ex);
 }

答案 2 :(得分:1)

试试这个:

    try
    {
        ImageView imageView = (ImageView)findViewById(R.id.imageView);
        int categoryID = 0;
        String imageName = "model_" + categoryID;
        int id = this.getResources().getIdentifier(imageName, "drawable", this.getPackageName());
        imageView.setImageResource(id);
    }
    catch(Exception ex)
    {
        Log.e("NIKHIL", ex.toString());
    }