【问题标题】:How to hide Progress Bar in Android WebView如何在 Android WebView 中隐藏进度条
【发布时间】:2020-09-04 09:28:45
【问题描述】:

我正在创建一个 Android 项目,并在其中创建了一个 Webview。当页面加载时,进度条会运行。当页面 100% 加载时,进度条会隐藏

但我不知道如何隐藏它

进度条代码:

@Override
            public void onProgressChanged(WebView view,int newProgress)
            {
                super.onProgressChanged(view, newProgress);
                superProgressBar.setProgress(newProgress);

            }

所有代码:

package com.djaman.musicwala;

import android.app.*;
import android.os.*;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.webkit.WebSettings;
import android.widget.ProgressBar;
import android.widget.ImageView;
import android.webkit.WebChromeClient;
import android.graphics.Bitmap;
import android.support.v7.app.ActionBar;
public class MainActivity extends Activity 
{
    ProgressBar superProgressBar;
    ImageView superImageView;
    WebView superWebView;
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        superWebView = (WebView) findViewById(R.id.webview);
        superProgressBar =  (ProgressBar) findViewById(R.id.myProcessBar);
        superImageView = (ImageView) findViewById(R.id.myImageView);

        superProgressBar.setMax(100);

        superWebView.loadUrl("http://musicwala.cf");
        superWebView.getSettings().setJavaScriptEnabled(true);
        superWebView.setWebViewClient(new WebViewClient());
        superWebView.setWebChromeClient(new WebChromeClient(){
            @Override
            public void onProgressChanged(WebView view,int newProgress)
            {
                super.onProgressChanged(view, newProgress);
                superProgressBar.setProgress(newProgress);

            }
            @Override
            public void onReceivedTitle(WebView view,String title)
            {
                super.onReceivedTitle(view, title);


            }
            @Override
            public void onReceivedIcon(WebView view,Bitmap icon)
            {
                super.onReceivedIcon(view, icon);
                superImageView.setImageBitmap(icon);
            }
        });

    }



    private WebView findViewById()
    {
        // TODO: Implement this method
        return null;
    }

    @Override
    public void onBackPressed()
    {
        // TODO: Implement this method
        if(superWebView.canGoBack())
        {
            superWebView.goBack();
        }else{
        super.onBackPressed();
        }
    }

}

【问题讨论】:

    标签: java android android-webview


    【解决方案1】:

    你可以在你的“onProgressChanged()”中试试这个。

    if (newProgress == 100) {
        superProgressBar.setVisibility(View.GONE);
    } else {
        superProgressBar.setVisibility(View.VISIBLE);
        superProgressBar.setProgress(newProgress);
    } 
    

    【讨论】:

    • 抱歉,我遇到了一个错误:- 'android.widget.progressBar' 的未知方法 'setVisible'
    • 这是‘setVisibility’
    • 是的,它正在工作,谢谢??
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-10
    • 1970-01-01
    • 2016-12-26
    • 2018-04-02
    • 1970-01-01
    • 1970-01-01
    • 2014-01-01
    相关资源
    最近更新 更多