I try to save a unique image to each object but I get this error, how should the constructor look for it to work that way? The constructor Beer(String, int, int) is undefined
m_beer = new ArrayList<Beer>(); 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; } }
Advertisement
Answer
final Beer b1 = new Beer("Tuborg", 7,context.getResources().getDrawable(R.drawable.tuborg));
and like said before:
public Beer(String name, int color, Drawable icon)
Or you can send the int as parameter:
final Beer b1 = new Beer("Tuborg", 7, R.drawable.tuborg);
and:
public Beer(String name, int color, int icon) { this.name = name; this.color = color; this.icon = context.getResources().getDrawable(icon); }