代码之家  ›  专栏  ›  技术社区  ›  NoWar

如何基于动态可绘制名称从PNG设置图像

  •  0
  • NoWar  · 技术社区  · 8 年前

    如何基于动态可绘制名称从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” 安卓小装置。ImageView。空对象上的setImageResource(int)“” 参考

    3 回复  |  直到 8 年前
        1
  •  2
  •   Nikhil Lotke    8 年前

    尝试以下操作:

        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());
        }
    
        2
  •  2
  •   AskNilesh    8 年前

    看来你忘了 bind 这个 ImageView .

    imageView = (ImageView) findViewById(R.id.image_view_id);
    
        3
  •  1
  •   AskNilesh    8 年前

    试试这个你忘了绑定 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);
     }