본문 바로가기

구글과인터넷/안드로이드

안드로이드 웹뷰에서 꽉찬 화면, 크기조정 관련~

출처: http://www.androidpub.com/136987

에뮬에서도 모바일페이지가 아닌 웹페이지에 들어가면 페이지가 자동으로 화면에 맞게 자동으로 사이즈 조절이 되잖아요..

webview getsettings()를 모두다 뒤져 봤는데 이부분에 대한게 없는거 같아요.

에뮬에서 설정에 보니 이 기능을 auto-fit page 라고 부는는데 이 것으로 검색을 해봐도 도저히 모르겠네요..

부탁좀 드리겠습니다.  

정확하게 말하면 첫페이지로드 될때마다 화면에 꽉 찬상태로 만들고 싶습니다.


아이폰에서는 간단 옵션만으로 바로 적용이 되는데 develop.android.com에서도 auto-fit는 안보이네요..

 
댓글
2010.02.18 09:33:42
id: 컨버전스컨버전스
http://developer.android.com/reference/android/webkit/WebSettings.html#setBuiltInZoomControls(boolean) 참고해 보시길 바랍니다.(저는 테스트는 안해보았습니다)
댓글
2010.02.18 09:43:54
가짜해커

아. 위 부분은 webview에서 줌 컨트롤러를 사용할꺼냐 말꺼냐 하는 부분입니다.  ㅜㅜ

댓글
2010.02.18 09:54:41
id: 컨버전스컨버전스
댓글
2010.02.18 12:36:02
가짜해커

음. 내용상 맞는것 같은데 사용법을 모르겠네요.. 간단하게 webview만 올리고 
세팅을 해보려고 하는데 변수가 나타나지 안네요..

       WebView wv = (WebView)findViewById(R.id.View01);       
        final WebSettings s = wv.getSettings();
        s. ????

댓글
2010.02.18 13:49:49
id: 원조안드로이드원조안드로이드
profile
이 세개 중에 선택해서 해보세요...
WebView webview = 블라블라~~~~;

webview.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);
webview.getSettings().setDefaultZoom(WebSettings.ZoomDensity.MEDIUM);
webview.getSettings().setDefaultZoom(WebSettings.ZoomDensity.CLOSE);
댓글
2010.02.18 14:34:16
가짜해커

감사합니다. 
맴버 변수가 안나온다는게요..

WebSettings.ZoomDensity 를 쓰고 싶은데도... ZoomDensity를찾지 못해서 에러가 납니다.
아우선 setDefaultZoom 도 참조 하지 못합니다. ㅠㅠ

제가 webborwser 원 소스를 까봣거든요... 거기에 auto-fit 설정 해주는 부분이 있는데 안되더라구요. 쩝..

댓글
2010.02.18 14:36:41
가짜해커

흠. 혹시 os 버전에 따라 틀린건지.. 예전 버전에서 지원했던거 아닐까요?
저는 지금 2.0으로 공부하고 있습니다.

댓글
2010.02.18 14:51:40
id: 원조안드로이드원조안드로이드
profile
WebSettings.ZoomDensity는 API Level7부터 나온것 입니다.

즉 sdk 2.1 버전이지요.. 제가 2.1버전에서 WebSettings.ZoomDensity.FAR 으로 확인하니 잘되었습니다.

가짜해커 님은 API Level 5이니 아마도 사용 못하질 겁니다.
댓글
2010.02.18 14:55:23
가짜해커
음... 감사합니다. 원조님.. 그러면 모토로이는 안된다는 말인가요?
삭제 수정 댓글
2010.08.24 22:04:40
블랙보트
위에 WebSettings.ZoomDensity.FAR을 사용해도 화면에 꽉차지 않고 가로 스크롤 바가 생깁니다.
어떻게 해야하나요..ㅜㅜ
댓글
2010.11.02 17:06:04
Jeremy

저도 많이 알고 있는 것은 아니지만 큰이미지를 webview 에서 화면 폭맞춤 할때 사용했던 방법입니다. 
( 알아내는데 하루 걸린듯 )

WebSettings.ZoomDensity.FAR 이것은 보니까 화면의 dpi 급을 설정하는거 같았어요 저도 해봣지만 실패했죠 .. 별차이가 없더라구요 ... 

WebSettings 에 보시면 setUseWideViewPort( boolean  ) 이 있습니다. 

이것을 이용하면 사용자가 줌배율을 정할 수 있더라구요 ( 기본 줌배율이 50~200% 더라는 ) 

저는 화면보다 가로세로가 각각 4배인 이미지를 넣었는데요 

webview 에 있는 setInitialScale( 26 ) 를 사용했습니다. 

그랬더니 처음에 배율에 맞게 되더니 바로 꽉찬화면으로 전환되더라구요 

물론 정답은 아닐 수 잇습니다.  하루종일 삽질하면서 했던거라서 

저처럼 고민하시는 분에게 도움이 되였으면 좋겠네요 

수고하세요


///////////////////////////////////////////////////////////////////////////////////////////////

출처: http://www.androidpub.com/950453

제목과 같이

webview에서 확대축소시  최소는 100% 밑으로는 

축소 안되게하는 옵션이 따로 있나요??

 
댓글
2010.11.05 19:24:50
onjo

아래의 태그로 처리하면 됩니다.

html 페이지를 수정해 주세요.

<HTML>
 <HEAD>
 <meta name="viewport" content="initial-scale=1.0; minimum-scale=1.0; user-scalable=yes;"/>

  <TITLE> Web View Local 테스트 </TITLE>
 </HEAD>