안드로이드

[안드로이드] 리사이클러뷰 레이아웃 매니저 종류

loasd 2023. 1. 4. 00:09
반응형

https://github.com/lnjky/fashion_people

 

GitHub - lnjky/fashion_people: 패션 추천 어플

패션 추천 어플. Contribute to lnjky/fashion_people development by creating an account on GitHub.

github.com

코드 전체를 보려면 위에 링크를 통해 확인할 수 있습니다.


이전의 리사이클러뷰 내용을 보면 이해가 더 쉽습니다.

https://loasd.tistory.com/62

 

[안드로이드] 리사이클러뷰 만들기

https://github.com/lnjky/fashion_people GitHub - lnjky/fashion_people: 패션 추천 어플 패션 추천 어플. Contribute to lnjky/fashion_people development by creating an account on GitHub. github.com 코드 전체를 보려면 위에 링크를 통해

loasd.tistory.com


리사이클러뷰의 레이아웃 매니저에는 3가지 종류가 있다.

LinearLayout / GridLayout / StaggeredGridLayoutManager 가 있다.

이 글에는 이에 대해 설명해보려 한다.

 

1. LinearLayoutManager

  - LinearLayoutManager는 가장 흔히 알고있는 리사이클러뷰의 모습이다.

 

 1) 세로

   - 따로 방향을 설정해주지 않는 경우에는 세로로 리사이클러뷰가 형성된다.

   - 코드는 다음과 같다.

LinearLayoutManager layoutManager = new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false);
recyclerView.setLayoutManager(layoutManager);

 

 2) 가로

   - 가로로 출력되는 리사이클러뷰이다.

   - 코드는 다음과 같다.

LinearLayoutManager layoutManager = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);
recyclerView.setLayoutManager(layoutManager);

 

 

2. GridLayoutManager

  - GridLayoutManager는 상하로 2개 이상의 뷰홀더를 통해 리스트를 보여주는 리사이클러뷰의 형태이다.

  - 형태는다음과 같다.

 1) 세로

   - 따로 설정해주지 않을 경우 세로로 형성된다.

   - 코드는 다음과 같다.

GridLayoutManager gridLayoutManager = new GridLayoutManager(this, 2);
recyclerView.setLayoutManager(gridLayoutManager);

new GridLayoutManager 안의 숫자를 통해 몇개의 뷰홀더를 통해 출력할지 정할 수 있다.

 

다음의 형식으로도 사용할 수 있다.

GridLayoutManager gridLayoutManager = new GridLayoutManager(this, 2, GridLayoutManager.VERTICAL, false);
recyclerView.setLayoutManager(gridLayoutManager);

 

 2) 가로

   - 여러개의 뷰홀더를 가로로 보여주는 방식이다.

   - 코드는 다음과 같다.

GridLayoutManager gridLayoutManager = new GridLayoutManager(this, 2, GridLayoutManager.HORIZONTAL, false);
recyclerView.setLayoutManager(gridLayoutManager);

 

 

3. StaggeredGridLayoutManager 

  - GridLayoutManager의 발전된 형식이다.

  - 아이템들의 크기가 일정하지 않고 제각각인 것이 특징이다.

  - 형태는다음과 같다.

 1) 세로

   - 따로 설정해주지 않을 경우 세로로 형성된다.

   - 코드는 다음과 같다.

StaggeredGridLayoutManager staggeredGridLayoutManager = new StaggeredGridLayoutManager(2, StaggeredGridLayoutManager.VERTICAL);
recyclerView.setLayoutManager(staggeredgridLayoutManager);

 

 2) 가로

   - 여러개의 뷰홀더를 가로로 보여주는 방식이다.

   - 코드는 다음과 같다.

StaggeredGridLayoutManager staggeredGridLayoutManager = new StaggeredGridLayoutManager(2, StaggeredGridLayoutManager.HORIZONTAL);
recyclerView.setLayoutManager(staggeredgridLayoutManager);

 

 

 

반응형