Codenameone 在codename one中,按钮作为图像展开以适应容器大小

Codenameone 在codename one中,按钮作为图像展开以适应容器大小,codenameone,Codenameone,我正在开发一个应用程序 现在我有一张表格 1) 我将布局设置为网格布局。网格为2 X 3(2行3列) 2) 我添加了6个按钮,这些按钮占据了6个单元格。每个按钮都有与其关联的图像和文本 3) 我设计的按钮没有边框,所以现在,按钮没有按钮的外观和感觉。它们看起来就像下面有文字的图像 4) 现在这些图像不会占据整个屏幕。因此,如果我有一个大屏幕的android,我会在第一行看到3个图像,一个很大的间隙,然后在第二行看到3个图像 5) 我希望,如果我不小心单击第一行和第二行之间的任何位置(在两行按钮/

我正在开发一个应用程序

现在我有一张表格

1) 我将布局设置为网格布局。网格为2 X 3(2行3列)

2) 我添加了6个按钮,这些按钮占据了6个单元格。每个按钮都有与其关联的图像和文本

3) 我设计的按钮没有边框,所以现在,按钮没有按钮的外观和感觉。它们看起来就像下面有文字的图像

4) 现在这些图像不会占据整个屏幕。因此,如果我有一个大屏幕的android,我会在第一行看到3个图像,一个很大的间隙,然后在第二行看到3个图像

5) 我希望,如果我不小心单击第一行和第二行之间的任何位置(在两行按钮/图像之间的间隙中),什么都不会发生

6) 然而,问题是,网格占据了整个屏幕。因此,即使我在两行按钮/图像的间隙中单击,单个单元格也是如此巨大,以至于每当我在间隙中单击时;我实际上还在网格的一个单元格中单击。现在,此单元格捕获事件并将其传输到该单元格中的按钮,然后执行一些操作

7) 我不希望这种情况发生。我希望只有当用户将手指放在图像上时,操作才会发生


我该怎么做?该解决方案在具有小/大/中屏幕的手机上应该不会出现问题。

根据您想要实现的目标,您有两种选择:

  • 将GridLayout容器放置在边界布局容器的北段内。这将使图像与顶部对齐。您可以轻松地使用层次结构/布局类型(这就是GUI builder非常酷的原因)

  • 将每个按钮放置在流程布局容器内,使其保持其首选大小。您可以将流程布局设置为“居中对齐”等