1

可変サイズの配列(たとえば、カードの配列)がある場合。

要素(たとえばFlowPane内)を表示するものを作成し、各要素に独自のコントローラー(fxml +各カードのコントローラー)を持たせるにはどうすればよいですか?要素(カード)のコンテナー(フローペイン)にその要素を含めることができます新しいものを交換、削除、または追加しましたか?

コントローラ:

public class HandController extends FlowPane implements Initializable{
    @Override public void initialize(URL arg0, ResourceBundle arg1){
    }
    public void setHand(ArrayList<Cards> Hand){
        //this would work if the hand were static
        for(int i = 0; i < Hand.size(); ++i){
            FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("CardView.fxml"));
            CardController controller = new CardController();
            fxmlLoader.setController(controller);
            fxmlLoader.setRoot(controller);
            Parent card = (Parent)fxmlLoader.load();
            fxmlLoader.setRoot(card);
            this.getChildren().add(card);
            controller.setCard(Hand.get(i));
        }
    }
}

Fxml:

<fx:root type="FlowPane" xmlns:fx="http://javafx.com/fxml"
         stylesheets="view/Style.css">
    <children>
        <!--should i put something here?-->
    </children>
</fx:root>
4

1 に答える 1