2017-03-31 18 views
1

嗨要实施国际化的概念(印地文语言)与JavaFx在较低的处理器上有效地运行。Javafx国际化与较低的硬件缓慢问题

配置: - 处理器 - 的Intel Atom CPUD425 @ 1.80GHz×2 RAM - 2 GB OS - 32位的Fedora 15

实施国际概念与资源束。但是在这个低平台上它速度很慢。 尽管按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("वापस"); 
    } 

     } 

它比提高资源包的方式对低硬件配置的性能和流量是罚款英语但印地文绘制了时间(2.8sec)。 但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?

+1

这可能是你被http://mail.openjdk.java.net/pipermail/openjfx-dev/2017-January/020134.html – tomsontom

+0

@tomsontom先生咬伤,现在,是否有任何解决方法这个问题或任何其他方式? –

+0

可能的解决方法:1.使用窗口; 2.使用英语; 3.建立你自己的JRE。我跟3一起看了〜10倍的性能提升。 – Itai

回答

0

找到解决有关此如下: - 建立印地文单独流(屏幕)与一个额外的变化,使用“文本”()内的标签。不设置任何文字标签。将其他语言文本(即印地语文本)设置为fxml中的“文本”。加载时间下降,以前所需时间: - 2.8秒,现在为1.2秒。