tizen - 进度条在真实设备上没有动画
问题描述
我使用原生 C 语言为 Tizen 4.0 创建了一个不确定的进度条:
Evas_Object* progressbar = elm_progressbar_add(parent);
evas_object_size_hint_align_set(progressbar, EVAS_HINT_FILL, EVAS_HINT_FILL);
evas_object_size_hint_weight_set(progressbar, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
elm_object_style_set(progressbar, "process/small");
elm_progressbar_pulse_set(progressbar, EINA_TRUE);
elm_progressbar_pulse(progressbar, EINA_TRUE);
elm_object_part_content_set(parent, "elm.progress", progressbar);
evas_object_show(progressbar);
这是“the”官方文档:https ://docs.tizen.org/application/native/guides/ui/efl/wearable/component-progressbar 。
如果我在我的模拟器(x86,Tizen 4.0)上运行上面的代码,我会得到预期的结果:
但是,在手表上运行时,它根本无法启动:
上面的代码有什么问题?我猜没什么。但是他们的文档一次又一次地缺乏信息。
更新
仅当您想从事件处理程序中执行此操作时,问题仍然存在:
elm_layout_signal_callback_add(layout, "mouse,clicked,1", "elm.*", show_loader_cb, layout);
static void show_loader_cb(void* data, Evas_Object* object, const char* emission, const char* source) {
Evas_Object* parent = reinterpret_cast<Evas_Object*>(data);
//PUT HERE THE CODE ABOVE
}
解决方案
您的代码似乎没有问题。
但是进度不起作用(第二张图片)是一般状态
elm_progressbar_pulse(obj, EINA_FALSE);
再次检查这一点。
而且我不确定您在事件处理程序部分的意图。
您是否曾经想在单击布局时添加进度和工作?
有的话试试这个
evas_object_event_callback_add(layout, EVAS_CALLBACK_MOUSE_DOWN, show_loader_cb, layout);
我还没有看到你的完整代码,但我猜 show_loader_cb 不是通过回调调用的。
推荐阅读
- r - 将连续变量更改为分类变量
- r - 在 R 替代方案中使用嵌套循环
- python - 基于不规则时间列合并两个数据帧
- android - 如何永久缓存 Firebase 实时数据库数据?
- python-3.x - Python 2 -> Python 3 re.sub
- controller - 如何将控制器添加到我的自定义扩展?打字稿3 9.5
- docker - 是否可以从 yocto 生成的图像创建 docker 图像?
- python - 使用 Tensorflow 2 中保存的 TensorFlow Estimator 进行预测
- vue.js - 修复无限循环。Vue.js
- sql - Python SQL日期插入问题