使用带有 BorderLayout.CENTRE 定位的 Dialog.showPacked() 时出现奇怪的 LWUIT 对话框行为
Posted
技术标签:
【中文标题】使用带有 BorderLayout.CENTRE 定位的 Dialog.showPacked() 时出现奇怪的 LWUIT 对话框行为【英文标题】:Strange LWUIT Dialog behaviour while using Dialog.showPacked() with BorderLayout.CENTRE positioning 【发布时间】:2013-01-23 14:09:07 【问题描述】:我正在使用 LWUIT for series 40 来制作我的 J2ME 应用程序,我注意到在使用 showPacked() 方法时 LWUIT-Dialog 的一个奇怪行为,该对话框使用 BorderLayout.CENTER 定位。
这种情况尤其发生在触控手机中。
我附上了一张图片来描述我的情况。
对话框最初显示为图像的第一部分。但是,它会在接下来的几秒钟内展开,变得像图像的第二部分所示的那样。
未来使用 showPacked 显示对话框的调用看起来像第三个。我不知道为什么会发生这种情况。我希望我的对话框始终像图像前半部分中显示的那样。哪里有我错了吗?
注意:Dialog的内容是一个动画标签。
【问题讨论】:
你可以给出你实现的代码吗? 【参考方案1】:我不知道这些人在那里做了什么,但我猜他们重排 UI 过于激进。尝试设置Dialog.setAutoAdjustDialogSize(false)
,看看能不能解决你的问题。
【讨论】:
我按照你说的做了,现在对话框在第一次尝试时没有调整大小。但在后续调用中它看起来像第二和第三阶段。我所做的就是创建一个带有图像的标签。通过在 lwiit 博客中关注 (today.java.net/pub/a/today/2008/11/20/…) 这篇文章对其进行动画处理。【参考方案2】:您可以删除标题和背景等。使用下面的代码,它只会让您的动画 GIF 显示带有暗色对话框背景:
setTitle(" ");
setUIID("Null");
setDialogUIID("Null");
getStyle().setBgTransparency(0);
getSelectedStyle().setBgTransparency(0);
getUnselectedStyle().setBgTransparency(0);
getPressedStyle().setBgTransparency(0);
getDialogStyle().setBgTransparency(0);
【讨论】:
以上是关于使用带有 BorderLayout.CENTRE 定位的 Dialog.showPacked() 时出现奇怪的 LWUIT 对话框行为的主要内容,如果未能解决你的问题,请参考以下文章
HBase - 使用带有值列表的一列与使用带有列列表的一列族的优缺点是啥?
如何使用带有或不带有 Appium 的 Robot Framework 集成 WinAppDriver?
使用带有 ajax Rest 调用的 Spring CSRF 和带有 Thymeleaf 的 HTML 页面
如何在带有 React 的 Typescript/JSX 中使用带有箭头函数的泛型?