Codenameone 如何使组件位于选项卡菜单上方?

Codenameone 如何使组件位于选项卡菜单上方?,codenameone,Codenameone,当我点击“Tabs”组件时,它会将其显示为边缘周围的整体(除了顶部显示“Interactive Stories”的部分) 我想知道如何使多按钮刚好位于“选项卡”组件底部的菜单上方。所以一个有边界布局的区域,当我将它的布局约束设置为“南”时,我想要的是它在菜单上方,而不是下方。因为如果我之前试着这么做,“标签”的菜单部分会重叠 我已经看了“如何使用布局管理器定位组件”的视频,但这并没有解释我想要什么;如果是的话,我就没抓住 以下是github回购协议,如果这有帮助的话: 如果你需要我澄清一些事情,

当我点击“Tabs”组件时,它会将其显示为边缘周围的整体(除了顶部显示“Interactive Stories”的部分)

我想知道如何使多按钮刚好位于“选项卡”组件底部的菜单上方。所以一个有边界布局的区域,当我将它的布局约束设置为“南”时,我想要的是它在菜单上方,而不是下方。因为如果我之前试着这么做,“标签”的菜单部分会重叠

我已经看了“如何使用布局管理器定位组件”的视频,但这并没有解释我想要什么;如果是的话,我就没抓住

以下是github回购协议,如果这有帮助的话:

如果你需要我澄清一些事情,既然我承认这可能不是很好的英语,请告诉我。我决心解决这个问题。谢谢你:)


编辑:解决了!打开theme.res文件,转到主题中的常量选项卡,并删除选项卡SONTOPBOOL常量布尔值。非常感谢

您将其放置在选项卡的南部,这是正确的。事实上,这是最好的方法

您可以为Story Maker容器提供一种独特的样式,比如说
ContainerBottomMargin2
,它具有2mm的底部边距或填充。这会将容器向上推一点,以避免重叠

您还可以设置选项卡容器的样式,使其顶部填充为2mm

因为北、南、东和西都比中更优先,所以如果可能的话,选项卡按钮将始终覆盖选项卡窗格中的组件。由于按钮位于南部,您正在将内容添加到中间。

该组件具有一种特殊模式,可在皮革主题中激活,以允许“箭头效果”覆盖在UI顶部。然后,它会在内容窗格的底部添加填充,以允许您在选项卡中滚动更多内容

它使用主题常量
tabsOnTopBool=true
,如果是这种情况,则使用特殊形式的
BorderLayout

border.setCenterBehavior(BorderLayout.CENTER_BEHAVIOR_TOTAL_BELOW);
如果您查看,您将看到:

中央部件占据整个屏幕,侧面为 自动放置在其顶部,从而创建分层效果


这有点没有文档化,所以我正在将这方面的文档添加到我的任务列表中…

我不确定我是否做得对,但我创建了一个新的“未选择”UIID类型,称为ContainerBottomMargin2,并转到边距选项卡,取消勾选“派生”,并在底部添加了2毫米。然后我转到“TabsContainer”,解开“派生”框,并将填充改为顶部有2毫米。它不起作用:/并显示它现在所在的蓝线。谢谢。不过有两个问题。如何从Tabs组件(我使用findTabs()获得)获取border实例?我应该在哪里设置中心行为/代码?我是否在StateMachine.java中的initVars(Resources res)中设置它?抱歉,如果这是一个初学者问题,这是我的第一个代号为one的应用程序。您不需要border实例。打开主题,转到主题中的常量选项卡,然后将
选项卡sontopbool
翻转到
false
。耶!现在我读了你的问题,我明白了。非常感谢Shai,我是你作品的忠实粉丝:)