본문 바로가기
■Development■/《Android》

[Android] SwipeRefreshLayout를 활용한 예제

by 은스타 2016. 5. 19.
반응형

이번 포스팅에서는 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는 사라지게 됩니다.




반응형