LWUIT,如何为表单标题创建自定义标签
Posted
技术标签:
【中文标题】LWUIT,如何为表单标题创建自定义标签【英文标题】:LWUIT, How to create a custom label for form title 【发布时间】:2012-03-16 12:51:18 【问题描述】:我想知道如何创建一个包含两个图标的标签,每侧一个,并将其设置为表单元素(LWUIT 小部件)的标题栏。
【问题讨论】:
你能详细解释一下你的问题吗 @Muhammad,我已经编辑了这个问题。 【参考方案1】:Form 有一个获取 titleArea 的功能,然后你可以放一些你想要的组件。
Form f = new Form();
Container c = f.getTitleArea();
Label iconLabel1 = new Label("leftIcon");//using Image
Label iconLabel2 = new Label("rightIcon");//using Image
c.addComponent(BorderLayout.WEST, iconLabel1);
c.addComponent(BorderLayout.EAST, iconLabel2);
【讨论】:
谢谢你 Yahan,你的解决方案和 Shai Almog 的工作。【参考方案2】:您可以在屏幕的北部添加一个组件,这是推荐的方式,它可以正常工作并且不会因 LWUIT/Codename One 的较新版本而中断。
当您不设置标题时,它会正常工作,您可以给它标题 UIID。 LWUIT 1.5 和更新版本有一个 TitleArea 容器,但我建议你远离它,因为 CodenameOne 为 ios/android 4.x 等定制了它。
【讨论】:
如果我在屏幕的北部添加一个组件,当滚动时,组件会移出屏幕,我不希望这种情况发生。 form.setScrollable(false); containerInCenterPosition.setScrollableY(true);【参考方案3】:使用setTitleComponent(Label title)
方法。
编辑:
派生Label
类并实现paint
方法,您可以使用Graphics
方法绘制Image
s 和文本。还将标签的文本位置设置为Label.CENTER
。
【讨论】:
我知道如何使用 'setTitleComponent(Label title)' 为表单标题设置标签。我的问题是我不知道如何自定义标签以使其包含两个图标,每侧一个,中间一个文本。以上是关于LWUIT,如何为表单标题创建自定义标签的主要内容,如果未能解决你的问题,请参考以下文章
如何为自定义 UIControl 添加触摸事件并在 swift 5 中确定触摸的项目