我有一个名为<input type="checkbox" name="chkbox" value="1"/>Check box 1<br/>
<input type="checkbox" name="chkbox" value="2"/>Check box 2<br/>
<input type="checkbox" name="chkbox" value="3"/>Check box 3<br/>
的自定义对象列表。我希望它绑定到customObjectList
,需要先将它转换为CharSequence,
我就是这样做的:AlertDialog.Builder.setMultiChoiceItems()
但我收到了这个错误:
customObjectList.toArray(new CharSequence[customObjectList.size()])
转换的正确方法是什么?
答案 0 :(得分:3)
错误的原因是您尝试创建CharSequence
某些未实现CharSequence
接口(您的CustomObject
类)的内容。如果两种类型相同,则可以使用toArray
方法,但它们不是。所以我建议的替代方案就是手动完成。我想你的customObject
类有一些你希望在选项中显示的String值,所以只需使用它然后执行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
}
现在您只需将myArray
用于setMultiChoiceItems
即可。希望你理解这个想法,我也解决了你的问题。