我正在制作一个基本骰子应用程序,并且我想在FlowPane中显示骰子结果,因为它会在窗口大小调整/水平调整大小时自动调整“列”。这个解决方案的问题是结果需要是可滚动的,并且在Android上的Gluon中ScrollPane性能似乎完全不足。
目前,对于桌面版(常规JavaFX),我在滚动窗格中使用FlowPane,而对于移动版本,我使用CharmListView。但我也希望能够在移动设备上使用性能良好的网格。
我希望能够让右侧的图像更像左侧的图像,而不会破坏移动设备上的滚动性能。
有没有人知道有什么工具可以做到这一点而不必获得窗口的宽度,计算我可以拥有多少骰子列,并用计算出的列数填充带有HBoxes的CharmListView?
我项目中的所有内容都是Gluon 3.我想知道它是否只是一堆图像框的问题。
我的代码大致形如下:
private Image image1 = new Image("/Dice/one.png");
private Image image2 = new Image("/Dice/two.png");
private Image image3 = new Image("/Dice/three.png");
private Image image4 = new Image("/Dice/four.png");
private Image image5 = new Image("/Dice/five.png");
private Image image6 = new Image("/Dice/six.png");
ArrayList<Image> images = new ArrayList<>();
images.add(image1);
images.add(image2);
images.add(image3);
images.add(image4);
images.add(image5);
images.add(image6);
FlowPane pane = new FlowPane();
pane.prefWidthProperty().bind(widthProperty());
ScrollPane scrollPane = new ScrollPane(pane);
scrollPane.setHbarPolicy(ScrollPane.ScrollBarPolicy.NEVER);
for(int i = 0; i < 1000; i++) {
pane.getChildren().add(new ImageView(images.get(random.nextInt(6))));
}
setCenter(scrollPane);'
这都在我的基本视图类中。性能绝对可怕,即使只有约100个骰子。我主要是为桌面战争游戏制作这个游戏,而且我扮演一个部落军队...所以超过100个骰子对我来说并不少见。我所做的设备也相当高端:三星Galaxy S7和Nexus 9。