我尝试为每个对象保存一个唯一的图像,但是我得到了这个错误,构造函数应该如何寻找它以这种方式工作?
构造函数Beer(String,int,int)未定义
m_beer = new ArrayList();
final Beer b1 = new Beer("Tuborg", 7, R.drawable.tuborg);
final Beer b2 = new Beer("Carlsberg", 7, R.drawable.carlsberg);
final Beer b3 = new Beer("Urquel", 9, R.drawable.urquel);
public class Beer
{
//Members
private String name;
private int color; //1 = Very dark 10 = Very light
private R.drawable icon;
//Methods
public Beer(String name, int color, R.drawable icon)
{
this.name = name;
this.color = color;
this.icon = icon;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public int getColor()
{
return this.color;
}
public void setColor(int color)
{
this.color = color;
}
public R.drawable getIcon()
{
return icon;
}
}
解决方法:
final Beer b1 = new Beer("Tuborg", 7,context.getResources().getDrawable(R.drawable.tuborg));
和以前说的一样:
public Beer(String name, int color, Drawable icon)
或者你可以发送int作为参数:
final Beer b1 = new Beer("Tuborg", 7, R.drawable.tuborg);
和:
public Beer(String name, int color, int icon)
{
this.name = name;
this.color = color;
this.icon = context.getResources().getDrawable(icon);
}
标签:java,android
来源: https://codeday.me/bug/20190526/1158440.html