我按照本主题的回答 Gridview with two columns and auto resized images
但是,我在这一行得到错误
items.add(new Item("Red", R.drawable.red));
原因是第二个参数的要求是String
。但是,R.drawable.red
是integer
。
那么,任何人都可以教我解决这个问题吗?
由于
答案 0 :(得分:1)
您需要创建自定义 Item
类,其中包含以下构造函数。
class Item {
Item(String str, int id) {
..
}
}
答案 1 :(得分:0)
如果第二个param的类型是String,则只需将id转换为字符串:
items.add(new Item("Red", String.valueOf(R.drawable.red)));
稍后您可以使用Integer.valueOf(str);
但是,您应该将类构造函数参数类型更改为int作为建议的其他答案。你根本不需要转换。
答案 2 :(得分:0)
很抱歉,但是检查您发布的主题,项类中的第二个参数是 int 而不是字符串
答案 3 :(得分:0)
你想改变第二个参数是字符串吗?在您的链接示例代码 MyAdapter类中,您需要更改模态类项。
private class Item {
final String name;
final String drawableId;
Item(String name, String drawableId) {
this.name = name;
this.drawableId = drawableId;
}
}