마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

webview에 관해 scroll과 canvas 질문입니다!!ㅠ제발 도와주세요..ㄷㄷ

0 추천

안녕하세요. 2가지 질문이 있습니다.

 

1. webivew에서 scroll이 되는 것을 막는 방법 
(인터넷 검색하면 Horizontal/Vertical이 나오는데 이건 bar가 나오냐 마느냐 인 것으로 확인하였습니다.)

2. webview위에 canvas를 올리고 확대를 하다보니 canvas는 안늘어나고 webview만 확대가 되더라구요..

같이 늘어나는 방법이 있을까요ㅠ? (scale을 이용하려했으니 canvas에서는 setScaleX, Y 따로따로 있더라구요 그래서 webview에서 getScale()을 하면 잘 가져오는 것 같은데 getScaleX 를 하면 1.0만 return합니다..ㅠ )

 

소스입니다~

	private void setWebviewInit(WebView webview, int pageNum) {
		LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
		param.topMargin = 30;
		param.bottomMargin = 30;
		webview.setLayoutParams(param);

		// 기존 소스 - 삭제하지 말 것

//		webview.setInitialScale(100);
		webview.getSettings().setJavaScriptEnabled(true);
		
		webview.setInitialScale(1);
		webview.getSettings().setSupportZoom(true);
		webview.getSettings().setBuiltInZoomControls(true);
		webview.getSettings().setDisplayZoomControls(false);
		  
		webview.setFocusable(true);
		webview.setFocusableInTouchMode(true);
//		webview.setVerticalScrollBarEnabled(false);
//		webview.setHorizontalScrollBarEnabled(false);
		/** about Click over 2.3 **/
		webview.setClickable(true);
		webview.setFocusable(true);
		webview.setLongClickable(true);
		webview.setFocusableInTouchMode(true);
		webview.setOnTouchListener(new OnTouchListener() {
			@Override
			public boolean onTouch(View v, MotionEvent event) {
//				if (csScrollViewMain.nMod == 1) {
				if (((DrawViewHandWriting) arrWebView.get(arrWebView.indexOf(v)).getChildAt(0)).nMod == 1) {
					((DrawViewHandWriting) arrWebView.get(arrWebView.indexOf(v)).getChildAt(0)).x = event.getX();
					((DrawViewHandWriting) arrWebView.get(arrWebView.indexOf(v)).getChildAt(0)).y = event.getY();
					
					((DrawViewHandWriting) arrWebView.get(arrWebView.indexOf(v)).getChildAt(0)).draw(
							((DrawViewHandWriting) arrWebView.get(arrWebView.indexOf(v)).getChildAt(0)).mPath, event,0);
				}
				return false;
			}
		});
		/** custom acting **/
		webview.setWebChromeClient(new WebviewAlert());
		webview.setWebChromeClient(new ChromeClient(this));
		webview.setWebViewClient(webviewclient);
}

 

익명사용자 님이 2016년 6월 2일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...