이번 포스팅은 Android 개발자는 꼭 알아야 하는 것 중 하나인 RecyclerView에 대해서 소개 하려고 합니다. RecyclerView는 Android App에서 데이터의 목록을 보여줄 때 사용하는 View 입니다.

예제 소개

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/b2762d8c-b2ff-4490-8933-3680b011bc59/KakaoTalk_Video_2020-03-14-13-19-18.mp4

이번 포스팅에서 소개할 예제는 아이언맨부터 앤드게임까지 마블의 영화를 개봉 순서대로 리스트로 보여주기 입니다.

RecyclerView Library 추가하기

RecyclerView를 내 프로젝트에서 사용하고 싶다면 Library를 추가 해야 합니다. app 모듈 안에 있는 build.gradle 파일에 추가하면 됩니다.

dependencies {
    implementation "androidx.recyclerview:recyclerview:1.1.0"
}

이 글을 쓰는 당시 최신 버전은 1.1.0 입니다. RecyclerView의 최신 버전을 확인하고 싶다면 아래 링크에서 확인 할 수 있습니다.

Maven Repository: androidx.recyclerview " recyclerview

하지만 com.google.android.material:material에 RecyclerView가 포함 되어 있기 때문에 material 라이브러리를 추가 해 줬다면 별도로 RecyclerView를 추가하지 않아도 사용 할 수 있습니다.

Maven Repository: com.google.android.material " material

activity_main.xml에 RecyclerView 추가하기

데이터 목록을 보여주고 싶은 layout에 RecyclerView를 아래처럼 추가하면 됩니다.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="<http://schemas.android.com/apk/res/android>"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

		...

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/rv_content"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

		...

</LinearLayout>

id는 RecyclerView에서 대문자인 rv를 앞에 사용하고 뒤에는 어떤 목적의 RecyclerView인지 작성하면 됩니다.

Activity로 RecyclerView 가져오기

RecyclerView의 id를 rv_content 로 추가 했기 때문에 activity에서 R.id.rv_content로 가져올 수 있습니다.

class MainActivity : AppCompatActivity() {

    private lateinit var rvContent: RecyclerView
    
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        
        rvContent = findViewById(R.id.rv_content)
    }
}