根据语言在webview中加载本地html

时间:2012-07-31 13:56:51

标签: android html webview

Hy ...我有一个webview组件,在asset文件夹下加载一个本地html文件,工作正常。

现在我要翻译mi app,我需要webview根据手机语言加载翻译的html文件。

我该怎么做?

非常感谢!!!!

我的代码......

package com.altaguia.difuntos;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.webkit.WebSettings;
import android.webkit.WebSettings.RenderPriority;
import android.webkit.WebView;

public class AcercadeActivity extends Activity {



    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.acercade);

        WebView myWebView = (WebView) findViewById(R.id.webView1);
        myWebView.getSettings().setRenderPriority(RenderPriority.HIGH);
        myWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
        myWebView.loadUrl("file:///android_asset/acercade.html");

    }

    public void backBTN(View v)
    {
        finish();
    }


}

2 个答案:

答案 0 :(得分:1)

使用Locale查找设备语言,然后加载相应的html文件:

String lang = Locale.getDefault().getLanguage();
String filename = "acercade.html";
if (lang.equals("fr")) {
  filename = "acercade.fr.html";
}
myWebView.loadUrl("file:///android_asset/" + filename);

答案 1 :(得分:0)

使用php。 选择语言并将其作为参数传递给GET或POST。 将它传递给php文件。在php文件中创建一个条件包含。

if ( $_GET['language']=="EN") include "indexEN.php";
else include index.php;

将翻译放入特定文件中,并在条件验证时包含它们。 如果您有许多翻译,请使用Switch / Case而不是IF。

如果您将使用GET表单,则URL将如下所示:

www.webpage.com/index.php?language=EN