【问题标题】:How to resize Icons in Tizen (Wearable)如何在 Tizen(可穿戴)中调整图标大小
【发布时间】:2019-05-25 05:08:10
【问题描述】:

我正在尝试为在 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 的有益教程。如果您知道任何此类教程,请与我分享。

再次感谢。

【问题讨论】:

    标签: tizen tizen-native-app


    【解决方案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);
    

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

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

    【讨论】:

    • 非常感谢。如果您能帮我解决这个问题,我将不胜感激:XML
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-22
    相关资源
    最近更新 更多