如何在Gluon TextField上放置一些像'999.999.999-99'这样的输入掩码。我可以构建一个继承自JavaFX TextField的新组件,但我宁愿使用Gluon TextField,因为它最适合移动设备。我尝试使用字符串转换器,但它不起作用。
谢谢!
当前的 Gluon Mobile TextFiled
控件确实支持浮动文本、最大长度计数和其他功能,但不允许直接TextFormatter
。
如果你看一下ScenicView,Gluon控件是建立在JavaFX TextField
控件之上的。
将文本格式化程序添加到控件时,使用 lookup
,可以访问内部 JavaFX TextField
并应用它。
如果您使用的是使用FXML(Glisten-Afterburner模板(创建的View
,其中包含Gluon Mobile TextField
,则可以获得JavaFX
@FXML
private TextField gluonTextField;
public void initialize() {
gluonTextField.setFloatText("Insert phone number");
primary.setOnShown(e -> {
javafx.scene.control.TextField javafxTextField = (javafx.scene.control.TextField) primary.lookup(".text-input");
if (javafxTextField != null) {
javafxTextField.setTextFormatter(new TextFormatter<>(...));
}
}
}
有关电话号码TextFormatter
的可能实现,请参阅此问题。