【问题标题】:CodenameOne - Get selected values from multilistCodenameOne - 从多列表中获取选定的值
【发布时间】:2015-11-25 16:00:13
【问题描述】:

如何仅从 MultiList 控件中获取选定的值? 请提供示例代码。

【问题讨论】:

    标签: codenameone


    【解决方案1】:
    Map<String, Object> value = (Map<String, Object>)list.getSelectedItem();
    

    将返回所选项目(您单击的项目)。我假设您使用了应该使用类似以下内容的复选框列表:

    ListModel<Map<String, Object>> model (ListModel<Map<String, Object>>)list.getModel();
    int size = model.getSize();
    for(int iter = 0 ; iter < size ; iter++) {
        Map<String, Object> value = model.getItemAt(iter);
        String selected = (String)value.get("selected");
        if(selected != null && selected.equals("true")) {
             ... add to list of selected items
        }
    }
    

    【讨论】:

    • 这对我不起作用。 (String) value.get("selected") 始终为空。
    • 所以你把答案投了下来,而不是很好地问?
    • 而不是问什么好?投票是在 stackoverflow 上提供高质量问题和答案的模型的核心。这个答案是不正确的。投票否决答案向社区的其他人表明这篇文章质量低下。如果您使用正常工作的代码 sn-p 更新您的答案,我很乐意将我的反对票变成赞成票。
    • 答案是正确的,请注意我的代表人数和简历。首先检查您是否可能做错了而不是假设是礼貌的。
    【解决方案2】:

    在上面的答案中,将第 1 行更改为以下内容:添加了 '=' 符号 ListModel> 模型 = (ListModel>)list.getModel();

    更改第 5 行: 引号中选择的单词“selected”必须与您的 GUI 中用于复选框的标志名称匹配,或者如果您创建了多列表,它必须与您在代码中为复选框使用的名称匹配

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-23
      • 1970-01-01
      • 2019-03-07
      • 2011-08-23
      • 2017-08-14
      相关资源
      最近更新 更多