Android 无法解析构造函数ArrayAdapter(上下文、int、int[])
这是我的代码:Android 无法解析构造函数ArrayAdapter(上下文、int、int[]),android,android-arrayadapter,Android,Android Arrayadapter,这是我的代码: int[] myCards = takeMyCardsFromDB(); // returns an int[] ArrayAdapter<Integer> adapter = new ArrayAdapter<Integer>(this, R.layout.row_my_roster_card, myCards); int[]myCards=takeMyCardsFromDB();//返回一个int[] ArrayAdapter=新的ArrayAdap
int[] myCards = takeMyCardsFromDB(); // returns an int[]
ArrayAdapter<Integer> adapter = new ArrayAdapter<Integer>(this, R.layout.row_my_roster_card, myCards);
int[]myCards=takeMyCardsFromDB();//返回一个int[]
ArrayAdapter=新的ArrayAdapter(这个,R.layout.row\u我的花名册\u卡,我的卡);
我对ArrayAdapter没有多少经验。我看到这些是ArrayAdapter的公共构造函数:
ArrayAdapter(上下文,int资源)
ArrayAdapter(上下文上下文、int资源、int文本视图资源ID)
ArrayAdapter(上下文、int资源、T[]对象)
ArrayAdapter(上下文上下文、int资源、int文本视图资源ID、T[]对象)
ArrayAdapter(上下文、int资源、列表对象)
ArrayAdapter(上下文上下文、int资源、int文本视图资源ID、列表对象)
我的构造函数有什么问题?那是因为
int[]
不是整数[]
自动装箱仅适用于单数类型,不适用于数组:int
可以自动装箱到Integer
,但是int[]
不能自动装箱到Integer[]
您需要将myCards
转换为Integer[]
。以下方法可以完成此工作:
public static Integer[] autoboxArray(int[] array) {
Integer[] newArray = new Integer[array.length];
for (int i = 0; i < array.length; i++) {
newArray[i] = array[i];
}
return newArray;
}
公共静态整数[]自动二进制数组(int[]数组){
整数[]新数组=新整数[array.length];
for(int i=0;i
谢谢。也许是深夜让我发疯了