반응형

이번 포스팅에서는 SwipeRefreshLayout을 활용한 예제를 알아보도록 하겠습니다. 


SwipeRefreshLayout은 Support Library v4에서부터 지원이 가능한 레이아웃입니다. 

요즘 Gmail이나 NHN등 여타 어플리케이션에서 많이 사용하고 있으므로 한번 구현해 보도록 하겠습니다.


1. 먼저 File...> Project Structure...> 에서 아래와 같이 Library Dependency를 추가합니다.



2. build.gradle 파일을 열어 Dependency에 아래 그림과 같이 추가해 줍니다.



3. 이제 설정 부분은 됐습니다. 이제 뷰 영역인 Resouce XML 파일을 구현하겠습니다. 

XML 파일에 SwipeRefreshLayout이 들어갈 부분에 아래 그림과 같이 구현해 줍니다.





4. 이제 Activity 영역을 구현하겠습니다. 

먼저 클래스 선언부에 아래와 같이 SwipeRefreshLayout.OnRefreshListner Interface를 implement 해 줍니다.

Implement 하게 되면 onRefresh()라는 메소드를 오버라이딩 해야 합니다.




5. OnCreate 든 OnResume 이든 Layout 초기화 하는 부분에 아래 그림과 같이 구현 해 줍니다.



6. 이제 마지막으로 SwipeRefreshLayout.OnRefreshListner Interface를 implement 했으므로

onRefresh()라는 메소드를 오버라이딩 해줍니다. 


여기서 중요한 건 아래 네모난 박스에 실제로 비지니스 로직을 구현해 줍니다. 



그리고 비지니스 로직을 다 구현했으면 loadingbar가 사라지게 하기 위해 

mSwipeRefreshLayout.setRefreshing(false) 라고 구현해 줍니다




실제로 구현하면 아래와 같이 Swipe 했을 시에 loadingbar가 나오면서 데이터를 로딩하고 데이터 로딩이 완료되면 loadingbar는 사라지게 됩니다.




반응형

+ Recent posts