- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 Tizen Edje 文件,它定义了我的布局。其中一个部分是一张图像,其部分名称为“警告”。该项目在边缘文件中设置为可见,并且按预期显示。
我想使用 C 代码隐藏这部分:
Evas_Object* image_NotSetYet = (Evas_Object *) edje_object_part_object_get(elm_layout_edje_get(wid->edjeLayout), "warning");
if (image_NotSetYet == NULL) {
dlog_print(DLOG_ERROR, LOG_TAG, "View: Unable to get warning image part");
return;
}
evas_object_hide(image_NotSetYet);
我尝试了许多不同的方法来获取与该部件名称关联的 Evas 对象并将其隐藏。经过几个小时后,我偶然发现了一些我模仿的代码,它似乎有效。我现在可以隐藏(并显示)我的图像部分。
但是,我后来在这个布局中向燕子添加了一个未真实的图像并显示它。突然“警告”部分图像再次显示。为什么?我是否以错误的方式隐藏了“警告”部分?上面的内容有问题吗?
或者,我向下面的燕子添加图像的方式有问题吗?图像(来自文件)将显示,但突然我上面的警告部分也显示:
Evas_Object *img = elm_image_add(wid->edjeLayout);
if (img == NULL) {
dlog_print(DLOG_ERROR, LOG_TAG, "View: Failed to add a image.");
return;
}
// Create an image and set contents to imagefile
char *imageFileName = barcode_filename();
bool isSet = elm_image_file_set(img, imageFileName, NULL);
dlog_print((isSet?DLOG_INFO:DLOG_ERROR), LOG_TAG, "View: %s file [%s] to image",(isSet==EINA_TRUE?"Set":"Failed to set"),imageFileName);
free(imageFileName);
evas_object_show(img);
// Assign the image to the swallow2 part
elm_object_part_content_set(wid->edjeLayout,"swallow2",img);
我尝试将图像添加到“窗口”而不是“布局”,但这似乎并不重要。 (我见过很多矛盾的例子,不知道哪个是对的)我尝试以多种不同的方式将图像设置为“swallow2”部件名称(同样,显示出许多矛盾的方式)。这是问题所在吗?否则,有人可以解释一下出了什么问题吗?
最佳答案
image_NotSetYet 不是图像对象。
Evas_Object* image_NotSetYet = (Evas_Object *) edje_object_part_object_get(elm_layout_edje_get(wid->edjeLayout), "warning");
指的是“警告”吞下部分对象。 You should never modify the state of the returned object, because it's meant to be managed by Edje, solely.
如果您想按照预期从布局中获取图像指针,您可以使用以下内容。
Evas_Object* image_NotSetYet = elm_object_part_content_get((wid->edjeLayout), "warning")
但是如上所述link描述,图像对象应该由 Edje 管理。您可能会遇到第二个问题,因为它是由 Edje 管理的。所以请使用edje_object_signal_emit处理吞没的图像。
关于c - 查找然后显示/隐藏 edje 零件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57650189/
我正在使用 EFL(启蒙基金会库)进行 Linux GUI 开发。我不明白 Edje 中使用的 swallow 小部件的含义。它的用途是什么? 谢谢。 最佳答案 用于用C中的widget替换edje部
我有一个 Tizen Edje 文件,它定义了我的布局。其中一个部分是一张图像,其部分名称为“警告”。该项目在边缘文件中设置为可见,并且按预期显示。 我想使用 C 代码隐藏这部分: Evas_Obje
我们开始使用 Enlightenment Foundation Libraries 进行嵌入式开发。我们正在开发“全屏”应用程序,因此不需要窗口管理器,我们的 Linux 系统最终将运行 Tizen
我是一名优秀的程序员,十分优秀!