JavaFX 手风琴在选项卡平移时不会折叠

JavaFX Accordion doesn't collapse when in tab pan

好的,所以我有一个手风琴,当它是选项卡窗格的子项时无法正确关闭,但在它之外可以正常工作。我不知道问题出在哪里。

此外,我刚刚发现调整 window 的大小会导致布局正确显示。

有办法解决这个问题吗?

这是 FXML:

<AnchorPane maxWidth="350" minWidth="350.0" prefWidth="350.0">
            <TabPane fx:id="tabPane" tabClosingPolicy="UNAVAILABLE" AnchorPane.bottomAnchor="0"
                     AnchorPane.leftAnchor="0" AnchorPane.rightAnchor="0" AnchorPane.topAnchor="0">
                <Tab text="Friends">
                    <AnchorPane>
                        <Accordion fx:id="accordion2" AnchorPane.bottomAnchor="45" AnchorPane.leftAnchor="0"
                                   AnchorPane.rightAnchor="0"
                                   AnchorPane.topAnchor="0" expandedPane="$friendsPane">
                            <panes>
                                <TitledPane fx:id="friendsPane" animated="false" styleClass="myClass" text="Friends">
                                    <ScrollPane fitToWidth="true" hbarPolicy="NEVER" AnchorPane.bottomAnchor="0"
                                                AnchorPane.leftAnchor="0" AnchorPane.rightAnchor="0"
                                                AnchorPane.topAnchor="0">
                                        <VBox fx:id="friends" fillWidth="true" styleClass="vbox">
                                            <children>
                                            </children>
                                        </VBox>
                                    </ScrollPane>
                                </TitledPane>
                                <TitledPane fx:id="groupsPane" animated="true" styleClass="myClass" text="Groups">
                                    <ScrollPane fitToWidth="true" hbarPolicy="NEVER" AnchorPane.bottomAnchor="0"
                                                AnchorPane.leftAnchor="0" AnchorPane.rightAnchor="0"
                                                AnchorPane.topAnchor="0">
                                        <VBox fx:id="groups" fillWidth="true" styleClass="vbox">
                                            <children>
                                            </children>
                                        </VBox>
                                    </ScrollPane>
                                </TitledPane>
                            </panes>
                        </Accordion>
                        <Button fx:id="activateCheck" mnemonicParsing="true" onAction="#activateCheck" text="New Group"
                                AnchorPane.bottomAnchor="10" AnchorPane.leftAnchor="10"/>
                        <Button fx:id="createGroup" mnemonicParsing="false" onAction="#createGroup" text="Create Group"
                                visible="false" AnchorPane.bottomAnchor="10" AnchorPane.leftAnchor="10"/>
                    </AnchorPane>
                </Tab>
                <Tab text="Received Requests">
                    <ScrollPane fitToWidth="true" hbarPolicy="NEVER" prefHeight="200.0" prefWidth="200.0">
                        <VBox fx:id="requestsRecv" minHeight="0.0" minWidth="0.0" prefHeight="200.0" prefWidth="200.0"
                              styleClass="vbox">
                            <children>
                            </children>
                        </VBox>
                    </ScrollPane>
                </Tab>
                <Tab text="Sent Requests">
                    <ScrollPane fitToWidth="true" hbarPolicy="NEVER" prefHeight="200.0" prefWidth="200.0">
                        <VBox fx:id="requestsSent" minHeight="0.0" minWidth="0.0" prefHeight="200.0" prefWidth="200.0"
                              styleClass="vbox">
                            <children>
                            </children>
                        </VBox>
                    </ScrollPane>
                </Tab>
            </TabPane>
        </AnchorPane>

Here is what it looks like:

这是由于设置选项卡窗格最大和最小宽度与让控制器设置侦听器强制包含选项卡窗格分隔符的拆分窗格到设定位置之间的冲突引起的。