在Codename One中填充Multilist时遇到了一些问题。 但是值不会加载到表单中。它显示带有复选框的空白列表。 我做错了什么?
@Override
protected boolean initListModelMultiList(List cmp) {
Vector vec = new Vector();
Hashtable h = new Hashtable();
h.put("User1", "List1");
h.put("User2", "List2");
h.put("User3", "List3");
vec.addElement(h);
cmp.setModel(new DefaultListModel(vec));
return true;
}
以下警告显示在eclipse窗口中。 Vector vec = new Vector()是第279行。
描述资源路径位置类型 矢量是一种原始类型。对泛型类型Vector的引用应该参数化StateMachine.java / Testing / src / userclasses第279行Java问题 列表是原始类型。对泛型类型List的引用应该参数化StateMachine.java / Testing / src / userclasses第278行Java问题 Hashtable是一种原始类型。对泛型类型Hashtable的引用应该参数化StateMachine.java / Testing / src / userclasses第280行Java问题 Hashtable是一种原始类型。对泛型类型Hashtable的引用应该参数化StateMachine.java / Testing / src / userclasses第280行Java问题 矢量是一种原始类型。对泛型类型Vector的引用应该参数化StateMachine.java / Testing / src / userclasses第279行Java问题
答案 0 :(得分:1)
列表中不需要3个元素而不是向量,哈希表的键需要匹配多列表中定义的键,请参阅http://www.codenameone.com/how-do-i---create-a-list-of-items-the-easy-way.html
示例代码:
Vector v = new Vector();
for(int iter = 0 ; iter < 100 ; iter++) {
Hashtable h = new Hashtable();
h.put("Line1", "First line of row: " + iter");
h.put("Line2", "Second line of row: " + iter");
v.addElement(h);
}
cmp.setModel(new DefaultListModel(v));