【发布时间】:2020-12-10 13:50:17
【问题描述】:
我在 Tizen 4.0 上创建了一个盒子容器:
Evas_Object* box = elm_box_add(naviframe);
evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
evas_object_show(box);
elm_object_content_set(naviframe, box);
然后我想将 edje 的布局添加到框中:
Evas_Object* page = elm_layout_add(box);
elm_layout_file_set(page, "layout.edj", "groupname_in_layout");
evas_object_show(page);
elm_box_pack_end(box, page);
然后我把盒子推到屏幕上:
elm_naviframe_item_push(naviframe, NULL, NULL, NULL, box, "empty");
但布局没有显示在模拟器上。
但是,如果我只是将布局添加到导航框架(而不是框),它会显示:
//elm_box_pack_end(box, page);
elm_naviframe_item_push(naviframe, NULL, NULL, NULL, page, "empty");
如果我以编程方式创建标签并将其放入框中,也会显示:
Evas_Object* text = elm_label_add(box);
elm_object_text_set(text, "<align=center>Hello Tizen</align>");
evas_object_show(text);
elm_box_pack_end(box, text);
elm_naviframe_item_push(naviframe, NULL, NULL, NULL, box, "empty");
为什么在地球上拒绝 Box 布局包含 Tizen 中唯一合理的布局(Layout)?尤其是在阅读了他们的“docs”之后:
您可以将任何 Evas 对象添加到盒子中。
据我所知,“any”表示任何:所以 Layout 也是名为“any”的组的一部分。
【问题讨论】: