代码之家  ›  专栏  ›  技术社区  ›  L.B

从资源id获取可绘制对象时的图像相同

  •  0
  • L.B  · 技术社区  · 10 年前

    我有一个问题。我正在搜索如何从资源id中获取可绘制对象。我已经在stackoverflow上找到了一些答案,例如: How do you obtain a Drawable object from a resource id in android package?

    然而,由于某些原因,当我使用此代码时,我总是得到相同的图像,而我的 res/drawable 文件夹我想我忽略了一件小事,但找不到问题所在。有人能帮我查一下我的密码吗?

    所以当我改变 R.drawable.img_1 R.drawable.img_2 图像不会改变。

    代码如下:

    public class ShowPaintingActivity extends AppCompatActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_show_painting);
            showImage();
        }
        public void showImage() {
    
            Drawable d = ContextCompat.getDrawable(this, R.drawable.img_1);
            ImageView image = (ImageView)findViewById(R.id.image);
            image.setImageDrawable(d);
    
        }
    }
    
    1 回复  |  直到 9 年前
        1
  •  0
  •   L.B    10 年前

    解决了这个问题。我把可抽出的文件夹弄乱了。我想是因为重命名了一些文件。通过执行以下操作修复了该问题。

    1-转到android工作室菜单栏Build>重建项目

    2-转到android工作室菜单栏Build>清理项目

    3-进入android工作室菜单栏文件>使缓存无效/重新启动