如何调整Tizen(可穿戴)中图标的大小

时间:2019-05-25 05:08:11

标签: tizen tizen-native-app

我正在尝试为在Tizen上运行的Galaxy Watch制作一个简单的应用程序。我现在要做的就是显示一个白色屏幕,在顶部和底部带有两个圆形按钮(加号和减号按钮)。我似乎已经解决了白色屏幕的问题。但是,当我尝试显示图标时,该图标会填满整个窗口。我需要帮助。

(PS:我对Android应用程序开发有一些了解。但是,Tizen是完全不同的球类游戏。我在某种程度上了解C和C ++)

    Evas_Object *bg = elm_bg_add(ad->win);
    elm_bg_color_set(bg, 255, 233, 26);
    evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    elm_win_resize_object_add(ad->win, bg);
    evas_object_show(bg);

    /* Plus Icon */
    Evas_Object *plusIcon = elm_icon_add(bg);
    elm_image_file_set(plusIcon, "/opt/usr/apps/org.example.basicui/res/images/plus.png", NULL);
    elm_object_content_set(bg, plusIcon);

Tizen文档确实令人困惑和乏味(与Android不同)。另外,我找不到关于Tizen Native Wearable App Development的任何有益的教程。如果您知道任何此类教程,请与我分享。

再次感谢。

1 个答案:

答案 0 :(得分:1)

“ / opt / usr / apps / org.example.basicui / res / images / plus.png”

此路径中是否有plus.png文件?

if(!elm_image_file_set(plusIcon,...
  elm_bg_color_set(bg, 255, 0, 0);

如果没有文件,则背景为红色。

如果要创建可点击的小部件,可以使用elm_button。 使按钮的样式为“圆形”。然后创建elm_image并将其设置为elm_object_content_set()。 但是,此样式可能会根据您的tizen版本而有所不同。

所以我建议采用以下方式。

/*BG - box(container) - image(clicked event)
                        image(clicked event)*/


Evas_Object *bg, box, *image;
// Make BG
bg = elm_bg_add(parent); 
elm_bg_color_set(bg, 255, 233, 26);
evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_show(bg);

// Make container
box = elm_box_add(bg);
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);

// Make image
image = elm_image_add(box);
if(!elm_image_file_set(image, /* Image path*/, NULL))
  return;
evas_object_size_hint_min_set(image, 100, 100);  // minimum size
evas_object_show(image);
evas_object_smart_callback_add(image, "clicked",  /* event callback function */, NULL);
elm_box_pack_end(box, image);

image = elm_image_add(box);
if(!elm_image_file_set(image, /* Image path*/, NULL))
  return;
evas_object_size_hint_min_set(image, 100, 100); // minimum size
evas_object_smart_callback_add(image, "clicked", /* event callback function */, NULL);
evas_object_show(image);
elm_box_pack_end(box, image);

elm_object_content_set(bg, box);

elm_win_resize_object_add(ad->win, bg);

elm_box https://developer.tizen.org/ko/development/guides/native-application/user-interface/efl/building-ui-layouts/box

elm_image https://developer.tizen.org/ko/development/guides/native-application/user-interface/efl/ui-components/wearable-ui-components/image