0

こんばんは、ここで苦労しています。どんな助けでも構いません。WebView を持つ xml を呼び出すレイアウトがあります。出来ますか?インターネットに接続していない場合。それは言うテキストを持つ他のレイアウトSorry.javaにリダイレクトします。「今回はインターネットに接続できなくてごめんなさい」 ..

これは私のコードです

@SuppressLint("SetJavaScriptEnabled")
public class Translate extends Activity {

private WebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.translate);

    mWebView = (WebView) findViewById(R.id.webview);
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.loadUrl("http://www.google.com");
    mWebView.setWebViewClient(new HelloWebViewClient());


}

private class HelloWebViewClient extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView webview, String url)
    {
        webview.loadUrl(url);
        return true;
    }
}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
    if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack())
    {
        mWebView.goBack();
        return true;
    }
    return super.onKeyDown(keyCode, event);
}

そして、これは私のxmlファイルです

<?xml version="1.0" encoding="utf-8"?>
<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>

ありがとうございました :)

4

2 に答える 2

0

このメソッドは、接続を確認します。

public boolean isDeviceConnectedToInternet() {
    NetworkInfo networkInfo = (NetworkInfo) ((ConnectivityManager).getSystemService(Context.CONNECTIVITY_SERVICE)).getActiveNetworkInfo();
    if (networkInfo != null && networkInfo.isConnected()) {
        return true;
    }
    return false;
}

したがって、アクティビティで接続を確認し、接続が利用できない場合は別のアクティビティに移動します。

if(!isDeviceConnectedToInternet()) {
    startActivity(new Intent(this, OfflineActivity.class));
} else {
    // Show webView
}

この助けを願っています。

于 2013-04-13T15:18:43.553 に答える