我写了下面的代码:
ImageButton b = (ImageButton) v;
b.setBackgroundResource(R.drawable.tom);
tom.png 在 res/drawable 中。上面的代码可以正常工作,但我将图像名称保存在数据库中(例如“tom”)。我尝试了背后的代码:
InfoDataSource datasourceRuta = new InfoDataSource(this);
datasourceRuta.open();
String strInfo = "";
List<Info> objInfo = datasourceRuta.GetInfo()
for (Info info : objInfo) {
strInfo = info.getImg0();
ImageButton b = (ImageButton) v;
b.setBackgroundResource(R.drawable.strInfo);
}
strInfo = "tom",我得到一个错误:strInfo 无法解析或不是一个字段。 你有解决办法吗? 我应该将图像保存在数据库中吗?
最佳答案
当您将“tom”图像复制到可绘制文件夹时,Android 会在 gen/R.java 中为此生成一个 tom 字段。在这种情况下。 R.java中没有strInfo,所以访问不到。
在这种情况下,您应该从图像文件中读取,为您的按钮创建位图和设置背景。您可以引用这个:How to read a file into a Java Bitmap?
关于android - 如何在 android 中为来自 ..Activity.java 的按钮设置背景图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13223386/