如何在Web视图顶部添加水平进度条?

时间:2019-05-31 06:22:10

标签: android webview android-webview progress-bar android-progressbar

页面加载时,我试图在Web视图的顶部实现进度条。就像铬。 我怎样才能做到这一点? 我在容器中有滑动刷新视图。 我在这里查看了很多答案并尝试实现它们,但是没有运气。

我只想在每次加载Web视图时实现一个简单的进度条(例如chrome)。

public class MainActivity extends Activity {
 WebView browser;

 SwipeRefreshLayout mySwipeRefreshLayout;
private ViewTreeObserver.OnScrollChangedListener mOnScrollChangedListener;


@SuppressLint("SetJavaScriptEnabled")
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    // find the WebView by name in the main.xml of step 2
    browser=(WebView)findViewById(R.id.webview);
    // Enable javascript
    browser.getSettings().setJavaScriptEnabled(true);
    // Set WebView client
    browser.setWebChromeClient(new WebChromeClient());

    browser.setWebViewClient(new WebViewClient() {

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            // open in Webview
            if (url.contains("example.com") ){
                // Can be clever about it like so where myshost is defined in your strings file
                // if (Uri.parse(url).getHost().equals(getString(R.string.myhost)))
                return false;
            }
            // open rest of URLS in default browser
            Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
            startActivity(intent);
            return true;
        }
        public void onPageFinished(WebView view, String url) {
            mySwipeRefreshLayout.setRefreshing(false);
        }
    });
    // Load the webpage
    browser.loadUrl("https://example.com/");

    mySwipeRefreshLayout = this.findViewById(R.id.swipeContainer);

    mySwipeRefreshLayout.setOnRefreshListener(
            new SwipeRefreshLayout.OnRefreshListener() {
                @Override
                public void onRefresh() {
                    browser.reload();

                }
            }
    );

}

0 个答案:

没有答案