Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 网格布局方向代码名ONE_Java_Codenameone - Fatal编程技术网

Java 网格布局方向代码名ONE

Java 网格布局方向代码名ONE,java,codenameone,Java,Codenameone,我在表单中设置了一个具有3列的gridlayout。每个单元格都有一个按钮集,如下所示 findLiveTraffic(f).setIcon(liveTraffic); findLiveTraffic(f).getAllStyles().setBgColor(0x33739f); findReports(f).setIcon(trafficReport); findReports(f).getAllStyles().setBgColor(0x33739f); 等等 当我在纵向视图中查看它时,

我在表单中设置了一个具有3列的gridlayout。每个单元格都有一个按钮集,如下所示

findLiveTraffic(f).setIcon(liveTraffic);
findLiveTraffic(f).getAllStyles().setBgColor(0x33739f);

findReports(f).setIcon(trafficReport);
findReports(f).getAllStyles().setBgColor(0x33739f);
等等

当我在纵向视图中查看它时,效果非常好,如果我也切换到横向视图,则布局非常适合。但是,如果我在应用程序启动时首先以横向模式查看应用程序,然后以纵向模式查看应用程序,则按钮及其图标在纵向模式中的比例会发生变化(横向模式很好)

首先在景观中查看:

现在是肖像画:


但是,如果我在应用程序启动时首先在纵向视图中查看,则在两个视图中都可以正常工作。如何修复它?

LiveTraffic
Reports
封装在一个容器中,设置该容器的背景色,并将组件的背景图像设置为您的图像:

findLiveTraffic(f).getAllStyles().setBgImage(liveTraffic);
findLiveTrafficContainer(f).getAllStyles().setBgColor(0x33739f);

findReports(f).getAllStyles().setBgImage(trafficReport);
findReportsContainer(f).getAllStyles().setBgColor(0x33739f);

这与你的另一个问题有关,提供了2个答案否我在这里设置了bg图像,但在这里我无法设置bg图像,因为已经设置了bg颜色,我也需要图标。添加方向是否是唯一的解决方案,我认为代码名自动缩放以适应横向和纵向,不是吗?或者我的问题是一个bug。恐怕我有很多与网格布局设计相关的问题。为什么不将它们封装在一个容器中,设置容器bg颜色并设置组件的bgImageok这是个好主意,谢谢。我试试看