【发布时间】:2015-02-18 11:30:50
【问题描述】:
我使用 SwipeRefreshLayout 重新加载列表视图的内容。 它可以工作,并且触发了 onRefreshListener,但是出现在 onswipe 上的小型加载微调器不想在加载完成后关闭。 有没有办法让它去?
编辑: 固定 SwipeView 表示 SwipeRefreshLayout
【问题讨论】:
我使用 SwipeRefreshLayout 重新加载列表视图的内容。 它可以工作,并且触发了 onRefreshListener,但是出现在 onswipe 上的小型加载微调器不想在加载完成后关闭。 有没有办法让它去?
编辑: 固定 SwipeView 表示 SwipeRefreshLayout
【问题讨论】:
你的意思是SwipeRefreshLayout?如果是这样,请使用SwipeRefreshLayout.setRefreshing(false)
【讨论】:
正确的使用方法是这样的:
if (swipeLayout.isRefreshing()) {
swipeLayout.setRefreshing(false);
}
【讨论】:
如果您使用SwipeRefreshLayout,则使用swipeLayout_object.setRefreshing(false); 关闭该加载图标。即
private SwipeRefreshLayout swipeLayout;
protected void onCreate(Bundle savedInstanceState) {
....
swipeLayout = (SwipeRefreshLayout) findViewById(R.id.swipe_container);
swipeLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
//Do your task
swipeLayout.setRefreshing(false);
}
});
}
此处提供详细信息。 https://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.html
【讨论】:
对于Kotlin,
SwipeRefreshLayout.isRefreshing = false
【讨论】:
这里是加载页面并在页面完全加载后删除加载动画的完整解决方案。
private class CustomWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
@Override
public void onPageFinished(WebView view, String url) {
swipeRefreshLayout.setRefreshing(false);
}
【讨论】: