0

一部のページを表示するためにwebviewを使用するAndroidアプリケーションに取り組んでいます。

アクションバーとアクションタブバーがあります。アクションバーには2つのボタンがあり、1つはログインページを開き、もう1つはWebビューの現在のページを更新する必要があります。

Webビューが存在するフラグメントのコードは次のとおりです。

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

    View V = inflater.inflate(R.layout.main_screen, container, false);

    WebView webView = (WebView)V.findViewById(R.id.webView_main);

    WebSettings webSettings = webView.getSettings();

    webSettings.setJavaScriptEnabled(true);

    webView.setWebViewClient(new WebViewClient());

    switch (getArguments().getInt(ARG_SECTION_NUMBER)) {

        case 1:

            webView.loadUrl(homeURL);

            break;

        case 2:

            webView.loadUrl(url2);

            break;

        case 3:

            webView.loadUrl(url3);

            break;

        case 4:

            webView.loadUrl(url4);

            break;

        case 5:

            webView.loadUrl(url5);

            break;
    }   

    switch (getArguments().getInt(ARG_ACTIONBAR)) {

        case 1:

            webView.loadUrl(homeURL);

            break;

        case 2:

            webView.loadUrl(loginURL);

            break;

        case 3:

            webView.loadUrl("javascript:window.location.reload(true)");

            break;

        case 4:

            webView.loadUrl(helpURL);

            break;

        case 5:

            webView.loadUrl(testJSURL);

            break;
    }

    return V;
}

ご覧のとおり、更新にはjavascriptを使用していますが、機能しません。空白のページを読み込むだけです。現在のURLを文字列に保存し、ユーザーが更新時にクリックしたときにこの文字列をロードしようとしましたが、機能しません...

誰かがアイデアを持っている場合は?:)

PS:アプリにはインターネットのアクセス許可があり、JavaScriptがアクティブ化されています。

4

1 に答える 1

1

わかりました、私は解決策を見つけました。

アクションバー管理をアクティビティクラスではなくフラグメントクラス内に配置したので、それが機能し、アプリがより明確になりました:)

于 2013-01-23T16:14:59.217 に答える