具有较低硬件缓慢问题的 Javafx 国际化

Javafx Internationalization with Lower Hardware Slowness issue

您好,想用在较低处理器上有效运行的 JavaFx 实现国际化概念(针对印地语)。

配置:- 处理器 - Intel Atom CPUD425@ 1.80GHz x 2 内存 - 2 GB OS - 32 位 Fedora 15

使用 Resource Bundle 实现了国际化概念。但是在那个低平台上它很慢。 尽管按照 How to implement language support for JavaFX in FXML documents?.

中的建议正确实施,但英语和印地语(2-4 秒)也会出现同样的缓慢情况

因此,尝试了另一种方法,采用一个全局变量,如果语言更改为印地语,则将该变量设置为 1。 并为每个 fxml 控制器初始化方法检查 该变量如果为 1,则将 fxml 标签和按钮文本设置为直接印地语字符串,如下所示。

@Override
    public void initialize(URL location, ResourceBundle resources) {
        // TODO Auto-generated method stub

    if(Configuration.getLangSelected()==1){
            label1.setText("आप क्या करना पसंद करेंगे?");
            button1.setText("ई-कैश प्राप्त करें");
            button2.setText("सेवा का उपयोग करें");
            button3.setText("वापस");
    }

      }

对于低硬件配置,它比资源包方式提高了性能,Flow 对于英语来说很好但是对于印地语渲染需要时间(2.8 秒)。 但是这里不接受 2.8 秒。有没有其他方法可以在最短时间内完成这项任务?

出于好奇,在初始化中将印地语字符串替换为英语字符串,如下所示:-

@Override
    public void initialize(URL location, ResourceBundle resources) {
        // TODO Auto-generated method stub

    if(Configuration.getLangSelected()==1){
            label1.setText("What you want to do?");
            button1.setText("Get E-cash");
            button2.setText("Use Service");
            button3.setText("Back");
    }

      }

对于此更改,相同的文件加载速度很快。 有没有问题,因为我们不能直接将其他语言字符串设置为标签和按钮之类的东西, 有没有办法直接设置文本并快速加载该 fxml?

找到了解决此问题的方法:- 为印地语构建单独的流程(屏幕)并进行一项额外更改,在标签内使用 "Text"()。不设置任何文本标签。在 fxml 中将其他语言文本(即印地语文本)设置为 "Text"。加载时间缩短,之前需要 :- 2.8 秒,现在 1.2 秒。