清除 TextField 时, floatTexttextField.setText(null) 初始化后, floatText 不会转换回底部,并且再次聚焦 TextField 会导致NPE . setText("") 不会导致NPE,但 floatText 仍然位于顶部 .

public class GluonApplication extends MobileApplication {

@Override
public void init() {

    addViewFactory(HOME_VIEW, () ->
    {

        TextField txtFloating = new TextField();
        txtFloating.setFloatText("floating");

        TextField txtNonFloating = new TextField();
        txtNonFloating.setPromptText("non floating");

        Button btnClear = new Button("clear text");
        btnClear.setOnAction(e -> {
            txtFloating.setText(null);
            txtNonFloating.setText(null);
        });

        VBox boxContent = new VBox(20,txtNonFloating, txtFloating, btnClear);
        boxContent.setAlignment(Pos.CENTER);

        View view = new View(boxContent) {

            @Override
            protected void updateAppBar(AppBar appBar) {
                appBar.setTitleText("Home");
            }

        };

        return view;
    });

}