CodeNameOne:自定义对话框主题问题

时间:2014-07-09 05:47:09

标签: codenameone

如何为对话框创建主题?

我试图更改对话框的边框样式,但边框样式对内部元素和外部元素应用2次。我原本期望边框样式只适用于内部元素。

为了更清楚,因为我无法在我的帖子中添加图像,所以对话框似乎不仅仅是在对话框处于活动状态时显示的中心框中。对话框UI由“背景表单”组成,该表单通常是透明的,并且来自覆盖在背景表单上的容器。最后提到的容器包含“对话框”的图形表示。

我的问题是我不能仅将样式应用于包含对话框的容器,但样式也适用于背景表单。

如何仅将边框样式应用于对话框容器元素?

任何其他提示都将受到高度赞赏。

感谢。

2 个答案:

答案 0 :(得分:1)

你是如何应用这种风格的?您是否正在使用主题将样式应用于Dialog UIID,如here所述。

在对话框组件上使用setStylegetStyle会有问题,并且不会产生正确的样式(您可能会在getDialogComponent上执行此操作但您应该使用主题)。

请注意,要设置对话框的样式,您应该使用DialogDialogTitle& DialogBody UIID和相当多的主题常量。

答案 1 :(得分:0)

谢谢Shai, 现在很清楚。

我正在从设计器中提供的BlankDialog元素开始执行自定义对话框。 因为我从BlankDialog开始,我认为只覆盖UIID主题就足够了。 我理解BlankDialog结构错误地认为这是一个简单的空表单,因为它被命名为“Blank ...”

现在很清楚,对于添加的每个新UI对象,我应该检查是否有任何其他UI子项与父项一起自定义。

再次感谢。