如何将系统默认选择设计添加到(gen)列表?

Howto add system-default selection designs to (gen)lists?

我有一个不错的 genlist,我想为所有项目添加复选框(/切换)。

我查看了这些页面:

You can provide an on/off switch, checkbox, or radio button along with the main text.

完美。怎么样?

我的目标是能够 select 列表中的项目,或者像这样:

或者像这样:

我知道我可以使用 item_styles。也知道我可以将自己的图片添加到 swallow.end 或类似的。

但是有没有办法使用 与 OS 相同的 设计?为了不破坏UI一致性?

在 swallow.end 部分使用 elm_check。 我不知道你用的是哪种风格, 所以这是样式为“1text.1icon.1”

的示例
Evas_Object* _gl_icon_get(void *data, Evas_Object *obj, const char *part)
{
        item_data *id = (item_data *)data;
        Evas_Object *content = NULL;

        if (strcmp(part, "elm.icon")) return NULL;

        id->check = content = elm_check_add(obj);
        elm_check_state_set(content, EINA_FALSE);
        elm_check_state_pointer_set(content, &id->checked);
        evas_object_show(content);

        return content;
}

如果你想检查项目被点击时的状态变化, 叫这个,

elm_check_state_set(id->check, !id->checked);

在项目的选择回调中。

你可以在elm-demo-tizen-wearable/src/genlist.c中看到完整的代码 (https://review.tizen.org/gerrit/#/admin/projects/profile/wearable/platform/core/uifw/elm-demo-tizen-wearable,tizen 5.5 分支)。 希望您现在可以访问 review.tizen.org。 或者您可以在 tizen-studio 中查看警报示例。 但是复选框的外观与您共享的图像不同, 我想是因为版本不同,Tizen SDK主题已经过时了..