반응형
안녕하세요. 훈츠 입니다. 안드로이드 정말 많이 사용되어 지는 리싸이클러 뷰2 포스팅 합니다. 이번 시간에는 리싸이클러뷰의 layoutManager에 대해 포스팅 합니다.
리싸이클러 뷰 레이아웃 Manager
리싸이클러뷰 에서는 레이아웃 Manager 만 교체 해주면 다른 레이아웃 형태를 View로 나타낼수 있습니다.
레이아웃 종류
-
리니어 레이아웃 (LinearLayoutManager (this, 화면방향 : RecyclerView.VERTICAL , false) )
-
그리드 레이아웃 (GridLayoutManager (this, 열 갯수 : 2 ) )
-
스테거드 레이아웃 (StaggeredGridLayoutManager ( 열 갯수 : 2, 화면방향 : RecyclerView.VERTICAL ) )
코드 공유
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
//훈스 블로그---------------------------------------------------------------------------------------------------코드//
class DataModel (val img : Int, val comment : String)
class DataHolderView(override val containerView: View) : RecyclerView.ViewHolder(containerView)
, LayoutContainer
class DataAdapter (val list:List<DataModel>,val layoutView:Int) : RecyclerView.Adapter<DataHolderView>(){
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): DataHolderView {
return DataHolderView(view)
}
override fun getItemCount(): Int {
return list.size
}
override fun onBindViewHolder(holder: DataHolderView, position: Int) {
holder.containerView.imageView.setImageResource(list[position].img)
holder.containerView.textView.text = list[position].comment
}
}
// 리니어
val adapter = DataAdapter(dataArray,R.layout.item_view1)
linearView.adapter = adapter
linearView.layoutManager = LinearLayoutManager(this,RecyclerView.VERTICAL,false)
// 그리드
val adapter = DataAdapter(dataArray,R.layout.item_view2)
gridView.adapter = adapter
gridView.layoutManager = GridLayoutManager(this, 2 )
// 스태거드
val adapter = DataAdapter(dataArray,R.layout.item_view3)
staggeredView.adapter = adapter
staggeredView.layoutManager = StaggeredGridLayoutManager(2,RecyclerView.VERTICAL)
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
http://colorscripter.com/info#e" target="_blank" style="text-decoration:none;color:white">cs |
'안드로이드 프로그래밍[Kotiln Code] > 안드로이드 초기 강좌' 카테고리의 다른 글
[안드로이드] 리싸이클러뷰 4 ( 버튼, 체크박스 연동) (0) | 2020.04.13 |
---|---|
[안드로이드] 리싸이클러뷰 3 ( 클릭 리스너 등록하기) (0) | 2020.04.13 |
[안드로이드] 리싸이클러뷰 1 (0) | 2020.04.10 |
[안드로이드] 스피너3 (콤보박스) with Mutable list (0) | 2020.04.09 |
[안드로이드] 스피너2 (콤보박스) with 모델클래스 (0) | 2020.04.09 |