Android ViewPager2 Set Page Margin

2023. 11. 16. 02:00·Android
728x90
반응형

이번 글은 안드로이드 뷰페이저를 사용하며 리사이클러뷰에서 ItemDecoration을 사용했듯

페이지 간 마진을 설정하는 방법에 대해 소개해보려 한다.

 

뷰페이저에서 페이지 간 마진을 주기 위해서는 먼저 뷰페이저에 PageTransformer를 설정해야 한다.

 

그리고 MarginPageTransformer 클래스를 사용해 생성자에 마진을 설정할 픽셀 값을 전달하면 된다.

 

여기서 다들 dp 단위를 사용하고 싶을테니 dp를 px단위로 변환하는 과정이 필요하다.

 

이젠 코드로 한 번에 살펴보자.

 

https://gist.github.com/BonusTrack02/aed704c6c989a9345444758894c7acff

 

ViewPager2 set page margin including dp to px convert

ViewPager2 set page margin including dp to px convert - ViewPager2Sample.kt

gist.github.com

 

코드는 정말 간단하다.

 

뷰페이저에 위에 설명한 클래스를 set하기만 하면 끝이다.

 

다들 눈치챘겠지만 gist에서는 뷰바인딩을 사용해 뷰를 제어하고 있기 때문에 viewPager2앞에 binding 변수가 붙어있다.

 

추가로 RecyclerView에서 ItemDecoration을 사용한 글을 보고 싶다면 아래 글을 확인해보길 추천한다.

https://bonustrack02.tistory.com/entry/Android-RecyclerView-ItemDecoration-in-Kotlin

 

Android RecyclerView ItemDecoration in Kotlin

내가 이 클래스를 사용하게 된 이유 내가 사용하던 RecyclerView에는 각 아이템 하단에 구분선(Divider)이 있다. 이전에는 해당 아이템을 구성하는 xml에 MaterialDivider를 배치했었다. 새로운 요구사항이

bonustrack02.tistory.com

728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'Android' 카테고리의 다른 글

Android Jetpack Compose ConstraintLayout match constraint  (2) 2023.12.25
Android Transparent Activity 만들기(투명 액티비티)  (0) 2023.11.25
Android DateRangePicker Get Selected Dates  (0) 2023.10.27
Android DateRangePicker Custom Settings - 3. Constraints Date  (0) 2023.10.25
Android DateRangePicker Custom Settings - 2. Current Date  (0) 2023.10.24
'Android' 카테고리의 다른 글
  • Android Jetpack Compose ConstraintLayout match constraint
  • Android Transparent Activity 만들기(투명 액티비티)
  • Android DateRangePicker Get Selected Dates
  • Android DateRangePicker Custom Settings - 3. Constraints Date
BonusTrack02.dev
BonusTrack02.dev
공부, 일상
  • BonusTrack02.dev
    BonusTrack02.dev
    BonusTrack02.dev
  • 전체
    오늘
    어제
    • 분류 전체보기 (237)
      • Android (84)
      • Language (63)
        • Java (19)
        • Kotlin (27)
        • Swift (17)
      • 프로그래머스 (68)
      • 주저리주저리 (22)
        • 카페 (5)
        • 음식점 (4)
        • 컨퍼런스 (1)
        • 팝업스토어 (4)
        • 해외여행 (0)
        • 전시회 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    배열
    viewModelScope
    room
    Java
    안드로이드
    LiveData
    코틀린
    Observer
    코루틴
    getNumericValue
    PCCE
    jetpack
    programmers
    ios
    오블완
    aac
    티스토리챌린지
    databinding
    ViewModel
    자바
    coroutines
    MVVM
    android
    Material
    Kotlin
    스위프트
    daterangepicker
    CodeLab
    프로그래머스
    SWIFT
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
BonusTrack02.dev
Android ViewPager2 Set Page Margin
상단으로

티스토리툴바