-
[Android] Recycler View ์ฌ์ฉ๋ฒAndroid 2021. 1. 4. 21:49๋ฐ์ํ
- ์ด ๊ธ์ Recycler View ์ฌ์ฉ ๋ฐฉ๋ฒ์ ์ค๋ช ํ๋ ๊ธ์ ๋๋ค.
RecyclerView ๋?
-
RecyclerView๋ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ๋ณด์ฌ์ฃผ๋ ๋ฐ ์ฌ์ฉ๋๋ View ์ ๋๋ค.
-
๋ง์ ๋ฐ์ดํฐ๊ฐ ์์ ์ ์คํฌ๋ฆฐ์ ์๋๋ก ๋ด๋ฆด ๋, RecyclerView๋ view๋ฅผ ์์ ์ง ์๊ณ ์ฌ์ฌ์ฉํฉ๋๋ค.
-
ListView์์ Adapter์ getView ๋ฉ์๋์์ convertView๋ฅผ ์ฌ์ฌ์ฉํ๋ ๊ฒ์ผ๋ก ์๊ฐํ๋ฉด ๋ฉ๋๋ค.
-
์ด ์ฌ์ฌ์ฉ์ ๋ง์ ์ฑ๋ฅ์ ํฅ์์ํค๊ณ ์ฑ์ ๋ฐ์์ฑ์ ํฅ์์ํค๊ณ ์๋น ์ ๋ ฅ์ ์ค์ผ ์ ์์ต๋๋ค.
์ฃผ์ ํด๋์ค
RecyclerView
- ๋ฐ์ดํฐ์ ์ผ์นํ๋ ๋ทฐ๋ฅผ ํฌํจํ๋ ViewGroup, view ์์ฒด๋ ๋ ์ ์์ด์ ๋ค๋ฅธ UI ์์์ฒ๋ผ ๋ ์ด์์ ๋ด์ ํฌํจ์ํฌ ์ ์์ต๋๋ค.
ViewHolder
- ๋ฆฌ์คํธ ๋ด์ ๊ฐ ์์๋ค์ view holder์ ์ํด ์ ์๋ฉ๋๋ค.
- view holder๊ฐ ์์ฑ๋์ ๋๋ ๋ฐ์ดํฐ๊ฐ ์์ง๋ง, ์์ฑ๋ ์ดํ RecyclerView๋ ViewHolder๋ฅผ ๋ฐ์ดํฐ์ ๋ฐ์ธ๋ฉ ์ํต๋๋ค.
Adapter
- Adapter์ ๋ด๋ถ์ ๋ฉ์๋๋ฅผ ํธ์ถํจ์ผ๋ก์จ RecyclerView๊ฐ view๋ฅผ ์์ฒญํ๊ณ view๋ค์ ๋ฐ์ดํฐ์๊ฒ ๋ฐ์ธ๋ฉ ํ ์ ์์ต๋๋ค.
LayoutManager
- The layout manager๋ ๋ฆฌ์คํธ์ ๊ฐ๋ณ์ ์ธ ์์๋ค์ ์ ๋ ฌํฉ๋๋ค.
RecyclerView ์ฌ์ฉ
-
class ๋ด๋ถ์ static class๋ก ์ ์ธ์ ํ์ง๋ง ๋ณธ์ง์ ์ผ๋ก๋ ๋ณ๊ฐ์ class์ ๋๋ค. ํ์ง๋ง ์ฝ๋์ ๊ฐ๋ ์ฑ๊ณผ ์ ์ง๋ณด์์ ํธ๋ฆฌ์ฑ์ ์ํด ์ฌ์ฉํ์ต๋๋ค.
-
onCreateViewHolder : ์๋ก์ด ViewHolder๋ฅผ ์์ฑํ ๋ ํธ์ถ๋๋ ๋ฉ์๋, ์ด ๋ฉ์๋๋ ViewHolder์ View๋ฅผ ์์ฑํ๊ณ ์ด๊ธฐํํ์ง๋ง, ์ธ๋ถ์ ์ธ ๋ด์ฉ์ ์ฑ์ฐ์ง ์์ต๋๋ค. ์ฆ, ์์ง์ ViewHolder๊ฐ ํน์ ๋ฐ์ดํฐ์ ๋ฐ์ธ๋ฉ ๋ ์ํ๋ ์๋๋๋ค.
-
onBindViewHolder : ์ด ๋ฉ์๋๋ฅผ ํธ์ถํ์ฌ ViewHolder์ ๋ฐ์ดํฐ๋ฅผ ์ฐ๊ฒฐ์ํต๋๋ค.
-
getItemCount : ๋ฐ์ดํฐ ์งํฉ์ ํฌ๊ธฐ ๋ฐํํฉ๋๋ค.
๊ฒฐ๊ณผ
๋ฐ์ํ'Android' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Android] Robelctric Test๋ (0) 2021.02.17 [Android] Unit Test, JUnit4 (0) 2021.02.16 [Android] ์๋๋ก์ด๋ ์คํ๋์ค NDK ์ฌ์ฉ๋ฒ (0) 2021.02.12 [Java] ์๋ฐ ์ฐ๋ ๋์ ๋๊ธฐํ (0) 2021.02.07 [Android] Broadcast? Broadcast Receiver๋? (0) 2021.01.08