清除 TextField
时, floatText
被 textField.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;
});
}