이번에는 화면을 아래로 당겨서 새로고침하는 방법에 대하여 알아보겠습니다.
1. build.gradle 모듈에서 아래 코드를 추가해준 뒤 Sync now를 눌러줍니다.
dependencies {
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
...
}
2. 메인액티비티 화면 레이아웃에서 SwipeRefreshLayout으로 갱신할 대상을 감싸줍니다.
저는 간단하게 초기 화면인 Hello World!를 새로고침으로 바꿔보겠습니다.

3. 메인액티비티 코드 구성
코드구성은 아래와 같이 간단합니다.
SwipeRefreshLayout은 Swipe할 때 아이콘을 아래로 보여주는 것이 전부입니다.
갱신할 대상은 setOnRefreshListener{ } 안에 값을 변경하는 코드가 필요합니다.
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
swipe.setOnRefreshListener {
tv_refresh.text = "새로고침"
swipe.isRefreshing = false
}
}
}
앱을 실행하고 화면을 아래로 당기시면 텍스트뷰 내용이 새로고침으로 바뀌는 걸 볼 수 있습니다.
RecyclerView에 SwipeRefreshLayout를 사용한 새로고침을 하시려면 화면구성에서 SwipeRefreshLayout안에 RecyclerView를 감싸주시고 리싸이클러뷰 어뎁터의 데이터를 변경하고, 어뎁터의 notifyDatasetChanged()함수를 호출해야 합니다.
'Kotlin' 카테고리의 다른 글
| [Android] Kotlin - WebView 사용하기 (0) | 2021.10.01 |
|---|---|
| [Android Kotlin - 뒤로가기 두 번 눌러 앱 종료 (0) | 2021.09.17 |
| [Android] Kotlin - 화면이동 및 데이터 전달 (0) | 2021.09.16 |
| [Android] Kotlin - SQLite Viewer를 사용하여 저장되어있는 데이터 베이스 확인하기 (0) | 2021.09.02 |
| [Android] Kotlin - 기존에 있던 프로젝트를 복사하여 이름바꿔 사용하기 (0) | 2021.08.27 |