티스토리 뷰

반응형

Stack Overflow에 자주 검색, 등록되는 문제들과 제가 개발 중 찾아 본 문제들 중에서 나중에도 찾아 볼 것 같은 문제들을 정리하고 있습니다.

Stack Overflow에서 가장 먼저 확인하게 되는 가장 높은 점수를 받은 Solution과 현 시점에 도움이 될 수 있는 가장 최근에 업데이트(최소 점수 확보)된 Solution을 각각 정리하였습니다.

 

아래 word cloud를 통해 이번 포스팅의 주요 키워드를 미리 확인하세요.

Remove scroll bar track from ScrollView in Android

안드로이드 ScrollView에서 스크롤 바 트랙 제거하는 방법

 문제 내용 

My Android app has a main WebView (HTML loaded from a local resource) which I want to use the entire width of the screen and be able to make (vertically) scrollable. So I've wrapped the WebView in a ScrollView in my layout XML, but no matter what I do I can't seem to be able to remove the scroll bar track from the right side of the scroll view. Even worse, I can't seem to be able to change the background colour of the scroll bar track.

제 안드로이드 앱은 전체 너비를 차지하고 세로로 스크롤 할 수 있도록 하려는 메인 WebView(로컬 리소스에서 로드된 HTML)를 가지고 있습니다. 그래서 나는 레이아웃 XML에서 WebView을 ScrollView로 감쌌지만, 오른쪽에 스크롤 바 트랙을 제거할 수 없습니다. 게다가, 스크롤 바 트랙의 배경 색상을 변경할 수도 없습니다.

 

The track takes up about 10dp's or so, which is creating problems for the HTML in the WebView. I'd like the scroll bar to appear on top of the web view (iPhone style, if you know what I mean). Now, you could say "why don't you change your HTML to be 10px thinner?", which is my fallback solution, but I'd much rather not have to.

트랙은 WebView에서 문제를 일으키는 약 10dp를 차지합니다. 스크롤 바가 (아이폰 스타일처럼) WebView 위에 나타나기를 원합니다. "왜 HTML을 10px 더 얇게 변경하지 않으시겠습니까?" 라고 할 수 있습니다. 이것은 제 대체 솔루션입니다만, 원하지 않습니다.

 

Here's the relevant snippet of layout XML, you'll see I've tried every android:etc attribute I could find:

여기 레이아웃 XML의 관련 부분이 있습니다. 모든 android:etc 속성을 시도해보았습니다.
<ScrollView 
  android:id="@+id/deal_web_view_holder"
  android:layout_below="@id/clock_bar_holder"
  android:layout_width="fill_parent" 
  android:layout_height="fill_parent"
  android:fillViewport="false"
  android:fadingEdge="none"
  android:background="#02a7e9"
  android:scrollbars="none"
  android:scrollbarSize="0dp"
  android:paddingRight="0dp"
  android:scrollbarAlwaysDrawVerticalTrack="false"
  android:scrollbarStyle="insideOverlay"
  android:scrollbarTrackVertical="@drawable/scrollbar_track_vertical" >
    <WebView
       android:id="@+id/deal_web_view"
       android:layout_width="fill_parent"
       android:layout_height="wrap_content"/>  
</ScrollView>

 

I'm targeting platform 2.1 / API lvl 7, really just dealing with normal size displays, mdp, hdp and xhdp.

저는 플랫폼 2.1 / API lvl 7을 대상으로 하고 있으며, 그냥 보통 크기의 디스플레이, mdp, hdp 및 xhdp를 처리하고 있습니다.

 

 

 

 높은 점수를 받은 Solution 

To remove a scrollbar from a view (and its subclass) via xml:

뷰(그리고 그 서브클래스)에서 스크롤 바를 xml로 제거하려면:
android:scrollbars="none"

http://developer.android.com/reference/android/view/View.html#attr_android:scrollbars

 

 

 

 가장 최근 달린 Solution 

These solutions Failed in my case with Relative Layout and If KeyBoard is Open android:scrollbars="none" & android:scrollbarStyle="insideOverlay" also not working.

이러한 해결책은 상대 레이아웃(Relative Layout)과 키보드가 열려있을 때 android:scrollbars="none" 및 android:scrollbarStyle="insideOverlay"을 사용해도 내 경우에 실패했습니다.

 

toolbar is gone, my done button is gone.

툴바가 없어지고 완료 버튼도 없어졌습니다.

 

not Working

 

This one is Working for me

이 방법은 나에게 잘 작동합니다.
myScrollView.setVerticalScrollBarEnabled(false);

 

 

출처 : https://stackoverflow.com/questions/6273335/remove-scroll-bar-track-from-scrollview-in-android

반응형
댓글
공지사항
최근에 올라온 글