반응형

뷰페이저 안에 들어있는 프래그먼트들을 좌우 스크롤을 이용해 바꿔볼 수 있으니 아주 편리합니다.

그런데 지금 보고 있는 화면이 전체 프래그먼트들 중에서 어느 것인지를 알기는 어렵습니다.

그래서 위나 아래쪽에 전체 아이템의 개수와 현재 보고 있는 아이템이 어떤 것인지를 표시해주는 것이 필요한 경우가 생깁니다.

이 때 타이틀스트립을 사용할 수 있습니다.

뷰페이저에 타이틀스트립을 어떻게 추가하는지 알아봅시다.



페이저타이틀스트립(PageTitleStrip)

뷰페이저 안에는 여러 개의 프래그먼트가 들어갈 수 있습니다.

이 프래그먼트의 총 개수와 현재 보고 있는 프래그먼트가 몇 번째 프래그먼트인지 아이콘으로 간단하게 알 수 있도록 해 주는 것이 타이틀스트립입니다.

타이틀스트립 외에 탭스트립을 사용할 수도 있는데 탭스트립을 사용하면 탭 모양으로 구분하여 보여줍니다.

 

레이아웃의 뷰페이저에 타이틀스트립 추가

메인 액티비티의 XML 레이아웃에 추가했던 뷰페이저 태그 안에 타이틀스트립 태그를 추가할 수 있습니다.

<android.support.v4.view.ViewPager
    android:id="@+id/pager"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
 
    <android.support.v4.view.PagerTitleStrip
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="top"
        android:background="#55cedf"
        android:textColor="#FFFFFF"
        android:paddingTop="5dp"
        android:paddingBottom="5dp">
    </android.support.v4.view.PagerTitleStrip>

</android.support.v4.view.ViewPager>

gravity 속성의 값이 top으로 되어 있어 타이틀스트립이 뷰페이저의 위쪽에 보이게 됩니다.


어댑터에 메소드 추가

어댑터 안에 getPageTitle 메소드를 추가하면 뷰페이저의 타이틀스트립이 알아서 제목 텍스트를 가져가 화면에 보여줍니다.

class MoviePagerAdapter extends FragmentStatePagerAdapter {

중략…
    @Override
    public CharSequence getPageTitle(int position) {
        return "페이지 " + position;
    }
}

타이틀스트립을 추가하는 방법이 아주 간단하죠?

반응형

'안드로이드 개발 > 부스트코스(안드로이드 프로그래밍)' 카테고리의 다른 글

스레드  (0) 2019.03.16
바로가기 메뉴만들기  (0) 2019.03.15
뷰 페이저(ViewPager) 만들기  (0) 2019.03.15
탭 만들기  (0) 2019.03.15
액션바 구성하기  (0) 2019.03.13
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기