개발/Android

View에 Scrollbar 제거 및 변경옵션

2013. 2. 12. 12:32

안드로이드에서 View마다 OverScroll 옵션과 ScrollBar 옵션을 변경할 수 있다.


1. ScrollBar 생성/제거

기본적으로 View가 보여줄 항목이 화면보다 크면 ScrollBar가 자동으로 생성되는데, ScrollBar를 안보이게 하고 싶으면 해당 View의 layout에 다음 옵션을 추가하면 된다.

android:scrollbars="none"

스크롤바를 제공하지 않는 View의 경우는 ScrollView를 추가하여 기존의 contents를 덮어줌으로써 스크롤바를 생성한다.

또는 다음과 같이 Scrollbar를 선언하여 사용한다.

android:scrollbars="vertical"


2. ScrollBar 변경

그리고 다음 명령어로 View의 스크롤바의 스타일을 설정할 수 있으며, 네 가지 옵션이 있다.

myView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);


 옵 션

 설 명

 SCROLLBARS_INSIDE_OVERLAY

 padding 영역 추가없이 내용물의 안쪽에 투명하게 스크롤바 생성. 기본값.

 SCROLLBARS_INSIDE_INSET

 padding 영역 추가하고 스크롤바 생성. 내용물 오버랩되지 않는다.

 SCROLLBARS_OUTSIDE_OVERLAY

 padding 영역 추가없이 내용물의 가장자리에 투명하게 스크롤바 생성.

 SCROLLBARS_OUTSIDE_INSET

 padding 영역 추가하고 가장자리에 스크롤바 생성.


3. OverScrollMode

ListView의 오버스크롤(리스트의 끝에 도달했을 때 계속 스크롤) 모드를 설정한다.

list..setOverScrollMode(View.OVER_SCROLL_ALWAYS);

OVER_SCROLL_ALWAYS: 오버스크롤을 항상 허가한다. (젤리빈에서는 파란색 음영으로 표시)

OVER_SCROLL_NEVER: 오버스크롤을 허가하지 않는다.

OVER_SCROLL_IF_CONTENT_SCROLLS: 내용물이 스크롤할만큼 클 대만 허용한다. 한 화면에 다 표시되는 경우는 NEVER, 스크롤 가능한 경우는 ALWAYS와 같다.


'개발 > Android' 카테고리의 다른 글

ListView 메소드  (0) 2013.02.08
Viewgroup, View, ListView  (0) 2013.02.07