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

웹뷰 (예제소스를 바탕으로)질문입니다.. 간절합니다!!

0 추천

안녕하세요. 현재 하려는 작업이

해당 디스플레이보다 긴 웹뷰를 올렸을때 웹뷰가 끝까지 보이지 않는 현상고정 사이즈인 웹뷰를 디스플레이 크기에 맞게 보여주는 현상 을  잡고 싶습니다.

심플하게 예제 소스를 만들어 보았습니다.

웹뷰의 사이즈가 고정이여야 하는 이유는 타 디바이스와 좌표의 호환을 위한 작업입니다.

제 디스플레이가 높이가 2000인데 웹뷰 높이가 20000이면 일정 부분이상 안보이더라구요.. 스크롤 뷰를 감싸라는 글을 많이 봤지만 확대축소하여 캔버스를 올려야 하기 때문에 스크롤 뷰를 감쌀 수는 업습니다ㅠ..

 

어떻게 해결할 수 있을까요?? 간절합니다...

 

소스입니다.

 

import android.app.Activity;
import android.content.Context;
import android.graphics.Color;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.util.Log;
import android.view.Display;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup.LayoutParams;
import android.view.WindowManager;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.FrameLayout;
import android.widget.LinearLayout;

public class ViewTestActivity extends Activity {

	// private FullScrollView fsv;
	// private Bitmap srcimg;
	private int displayHeight;
	private int displayWidth;
	private String mode = "DRAW";
	
	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		getDisplaySize();

		

		WebView wv = new WebView(getBaseContext());
		wv.setInitialScale(1);
		wv.getSettings().setUseWideViewPort(true);
		wv.getSettings().setLoadWithOverviewMode(true);
		wv.setLayoutParams(new LinearLayout.LayoutParams(793,12018));
		wv.setBackgroundColor(Color.GRAY);
                String content = "엄청 긴 html이지만 올리다가 사이트가 멈춰서 글로 대신합니다..";
                 wv.loadData(content, "text/html; charset=utf-8", "UTF-8");
                 //		wv.setWebViewClient(new WebViewClientClass());
		wv.invalidate();
		FrameLayout main_container = (FrameLayout) findViewById(R.id.createConsentnote_root);
		main_container.addView(wv, 0);
 }
}

도와주세요ㅠ

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

답변 달기

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