在加载 WebView 之前滑动以刷新隐藏
Swipe to Refresh hides before loading the WebView
我为我的 WebView 实现了滑动刷新,它工作正常。但是有一个问题我无法解决。问题是我的滑动刷新在 6 秒后隐藏。在 WebView 的加载完成之前,它不会保留在那里。我想要的是滑动刷新应该保持可见,直到页面完全加载。
我的实现
swipeView = (SwipeRefreshLayout) view.findViewById(R.id.swipe);
myWebView = (WebView) view.findViewById(R.id.webview);
myWebView.loadUrl("http://m.facebook.com");
swipeView.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener()
{
@Override
public void onRefresh()
{
swipeView.setRefreshing(true);
( new Handler()).postDelayed(new Runnable()
{
@Override
public void run()
{
swipeView.setRefreshing(false);
myWebView.loadUrl("http://m.facebook.com");
}
}, 6000);
}});
使用 WebView 侦听器并在 onPageFinished 侦听器中完成滑动..
例如如下
mWebView.setWebViewClient(new WebViewClient() {
public void onPageFinished(WebView view, String url) {
// do your stuff here
swipeView.setRefreshing(false);
}
});
对于您的情况,请像下面这样更改您的代码,
swipeView = (SwipeRefreshLayout) view.findViewById(R.id.swipe);
myWebView = (WebView) view.findViewById(R.id.webview);
mWebView.setWebViewClient(new WebViewClient() {
public void onPageFinished(WebView view, String url) {
// do your stuff here
swipeView.setRefreshing(false);
}
});
swipeView.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener()
{
@Override
public void onRefresh()
{
myWebView.loadUrl("http://m.facebook.com");
}});
我为我的 WebView 实现了滑动刷新,它工作正常。但是有一个问题我无法解决。问题是我的滑动刷新在 6 秒后隐藏。在 WebView 的加载完成之前,它不会保留在那里。我想要的是滑动刷新应该保持可见,直到页面完全加载。
我的实现
swipeView = (SwipeRefreshLayout) view.findViewById(R.id.swipe);
myWebView = (WebView) view.findViewById(R.id.webview);
myWebView.loadUrl("http://m.facebook.com");
swipeView.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener()
{
@Override
public void onRefresh()
{
swipeView.setRefreshing(true);
( new Handler()).postDelayed(new Runnable()
{
@Override
public void run()
{
swipeView.setRefreshing(false);
myWebView.loadUrl("http://m.facebook.com");
}
}, 6000);
}});
使用 WebView 侦听器并在 onPageFinished 侦听器中完成滑动..
例如如下
mWebView.setWebViewClient(new WebViewClient() {
public void onPageFinished(WebView view, String url) {
// do your stuff here
swipeView.setRefreshing(false);
}
});
对于您的情况,请像下面这样更改您的代码,
swipeView = (SwipeRefreshLayout) view.findViewById(R.id.swipe);
myWebView = (WebView) view.findViewById(R.id.webview);
mWebView.setWebViewClient(new WebViewClient() {
public void onPageFinished(WebView view, String url) {
// do your stuff here
swipeView.setRefreshing(false);
}
});
swipeView.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener()
{
@Override
public void onRefresh()
{
myWebView.loadUrl("http://m.facebook.com");
}});