After looking at this advice, I tried the same.
myTextField.getProperties().put("vkType", "numeric");
But when I apply focus on the control at runtime, I get the error below and, also still, only the standard qwerty keyboard is shown to enter text into the textfield.
I found a more recent post here of someone else failing too. I also applied the same runtime config he mentions as below. That does show a "virtual" keyboard on my laptop at runtime but still not the numeric keyboard when testing directly on the phone.
<plugin>
<groupId>org.openjfx</groupId>
<artifactId>javafx-maven-plugin</artifactId>
<version>${javafx.plugin.version}</version>
<executions>
<execution>
<id>default-cli</id>
<configuration>
<options>
<option>-Dcom.sun.javafx.isEmbedded=true</option>
<option>-Dcom.sun.javafx.virtualKeyboard=javafx</option>
</options>
<mainClass>${main.class}</mainClass>
</configuration>
</execution>
Exception in thread "JavaFX Application Thread" java.lang.ClassCastException: class java.lang.String cannot be cast to class java.lang.Integer (java.lang.String and java.lang.Integer are in module java.base of loader 'bootstrap')