Java 将自定义对象列表转换为CharSequence
我有一个名为Java 将自定义对象列表转换为CharSequence,java,android,Java,Android,我有一个名为customObjectList的自定义对象列表。我希望它绑定到AlertDialog.Builder.setMultiChoiceItems(),首先需要将其转换为CharSequence, 我就是这样做的:customObjectList.toArray(新的字符序列[customObjectList.size()])但是我得到了这个错误: java.lang.ArrayStoreException: source[0] of type com.idea.customobject
customObjectList
的自定义对象列表。我希望它绑定到AlertDialog.Builder.setMultiChoiceItems()
,首先需要将其转换为CharSequence,
我就是这样做的:
customObjectList.toArray(新的字符序列[customObjectList.size()])
但是我得到了这个错误:
java.lang.ArrayStoreException: source[0] of type com.idea.customobject cannot be stored in destination array of type java.lang.CharSequence[]
正确的转换方法是什么?错误的原因是,您试图创建的
CharSequence
对象没有实现CharSequence
接口(您的CustomObject
类)。如果这两种类型相同,您可以使用toArray
方法,但它们不同。因此,我建议的另一种选择是手动操作。我假设您的customObject
类具有某种字符串值,您希望在选项中显示该值,因此只需使用该值并执行for循环,如下所示:
CharSequence[] myArray = new CharSequence[customObjectList.size()];
for(int i = 0; i < customObjectList.size(); i++){
myArray[i] = customObjectList.get(i).getTitle(); // Whichever string you wanna store here from custom object
}
CharSequence[]myArray=新的CharSequence[customObjectList.size()];
对于(int i=0;i
现在您只需使用
myArray
进行setMultiChoiceItems
。希望您理解这个想法,我也明白了您的问题。错误的原因是您试图创建一个CharSequence
的东西,而该东西没有实现CharSequence
接口(您的CustomObject
类)。如果这两种类型相同,您可以使用toArray
方法,但它们不同。因此,我建议的另一种选择是手动操作。我假设您的customObject
类具有某种字符串值,您希望在选项中显示该值,因此只需使用该值并执行for循环,如下所示:
CharSequence[] myArray = new CharSequence[customObjectList.size()];
for(int i = 0; i < customObjectList.size(); i++){
myArray[i] = customObjectList.get(i).getTitle(); // Whichever string you wanna store here from custom object
}
CharSequence[]myArray=新的CharSequence[customObjectList.size()];
对于(int i=0;i
现在您只需使用
myArray
进行setMultiChoiceItems
。希望你明白这个想法,我也明白你的问题。嘿,伙计,你解决了吗?嘿,伙计,你解决了吗?