Home » Android » android – Remove loading spinner in SwipeRefreshLayout

android – Remove loading spinner in SwipeRefreshLayout

Posted by: admin April 23, 2020 Leave a comment

Questions:

I use a SwipeRefreshLayout to reload the content of a listview.
It works and the onRefreshListener is triggered but the small loading spinner that appears onswipe doesn’t want to dismiss after the loading is complete.
Is there a way to make it go ?

Edit : fixed SwipeView means SwipeRefreshLayout

How to&Answers:

Do you mean SwipeRefreshLayout? if so use SwipeRefreshLayout.setRefreshing(false)

Answer:

The correct way of using it is like this:

if (swipeLayout.isRefreshing()) {
   swipeLayout.setRefreshing(false);
}

Answer:

If you are using SwipeRefreshLayout then use swipeLayout_object.setRefreshing(false); for dismiss that loading icon. i.e.

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);

                }
            });
}

Details available here.
https://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.html

Answer:

here is complete solution for loading a page and remove loading animation after page is fully loaded.

 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);
}

Answer:

For Kotlin,

SwipeRefreshLayout.isRefreshing = false