Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 进度条不显示';webview正在加载时不显示_Android_Webview_Progress Bar_Android Progressbar - Fatal编程技术网

Android 进度条不显示';webview正在加载时不显示

Android 进度条不显示';webview正在加载时不显示,android,webview,progress-bar,android-progressbar,Android,Webview,Progress Bar,Android Progressbar,通过查看从internet上找到的示例,我编写了webview示例代码。我想显示progressbar,直到webview在我的片段中加载一个页面 “我的活动”包含工具栏、显示片段的框架和导航抽屉。当我从导航抽屉中选择一个条目时,会显示一个包含进度条和webview的新片段,该片段只是尝试加载下面的页面,这是片段的代码 @Override public View onCreateView(LayoutInflater inflater, ViewGroup container,

通过查看从internet上找到的示例,我编写了webview示例代码。我想显示progressbar,直到webview在我的片段中加载一个页面

“我的活动”包含工具栏、显示片段的框架和导航抽屉。当我从导航抽屉中选择一个条目时,会显示一个包含进度条和webview的新片段,该片段只是尝试加载下面的页面,这是片段的代码

    @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    View rootView = inflater.inflate(R.layout.fragment_full_page, container, false);
    //int view_num = getArguments().getInt(ARG_SECTION_NUMBER);

    progressBar = (ProgressBar)rootView.findViewById(R.id.webviewProgress);
    progressBar.setVisibility(View.VISIBLE);

    webView = (WebView) rootView.findViewById(R.id.webView1);
    webView.getSettings().setLoadWithOverviewMode(true);
    webView.getSettings().setBuiltInZoomControls(true);
    webView.getSettings().setAppCacheEnabled( true );
    webView.getSettings().setUseWideViewPort(true);
    webView.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
    webView.setScrollbarFadingEnabled(true);
    //webView.getSettings().setSupportZoom(true);
    webView.getSettings().setCacheMode( WebSettings.LOAD_DEFAULT );
    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
    String urlString = getArguments().getString("URLSTRING");
    final Boolean clickable = getArguments().getBoolean("CLICKABLE");

    Boolean networkAvailable = Utils.isNetworkAvailable(super.getActivity().getApplicationContext());
    if(networkAvailable == true) {
        webView.loadUrl(urlString);
    } else {
        webView.loadUrl(Utils.DEFAULT_URL_PAGE);
    }

    webView.setWebViewClient(new WebViewClient() {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            //progressBar.setVisibility(View.VISIBLE);
            if (clickable) {
                view.loadUrl(url);
                return false;
            } else {
                return true;
            }
        }

        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            super.onPageStarted(view, url, favicon);
            progressBar.setVisibility(View.VISIBLE);

        }

        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);
            progressBar.setVisibility(View.GONE);
        }

    });

    webView.setOnKeyListener(new View.OnKeyListener() {
        @Override
        public boolean onKey(View v, int keyCode, KeyEvent event) {
            if (event.getAction() == KeyEvent.ACTION_DOWN) {
                WebView webView = (WebView) v;

                switch (keyCode) {
                    case KeyEvent.KEYCODE_BACK:
                        if (webView.canGoBack()) {
                            webView.goBack();
                            return true;
                        }
                        break;
                }
            }
            return false;
        }
    });


    return rootView;
}
下面是fragment_full_page.xml

    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".FragmentFullPage" >

<ProgressBar
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:layout_gravity="center|top"
    android:id="@+id/webviewProgress"
    />

<WebView
    android:id="@+id/webView1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
/>

网页加载需要时间(使用wifi和3g尝试),但进度条没有显示任何时间

为了测试PrimeStruBar是否在FractMyFull页面的中间显示,我删除了WebVIEW代码,只保存进度条,然后显示。


在webview加载时未显示进度条的代码出错,对此我无法理解。

请尝试将进度条xml部分移动到webview下方,以便在itexcellent上方呈现。谢谢你节省了我的时间