Xin chào Tôi có một webview và tôi muốn nó phù hợp với màn hình, sao cho người dùng không phải cuộn theo chiều ngang hoặc chiều dọcAndroid webview phù hợp với tất cả nội dung để sàng lọc
Tôi đã tìm kiếm trước đây, nhiều đề xuất sau đây nó chỉ giới hạn chiều rộng, người dùng sẽ vẫn phải cuộn theo chiều dọc:
engine = (WebView) (findViewById(R.id.webView1));
engine.loadUrl(www.example.com);
engine.getSettings().setLoadWithOverviewMode(true);
engine.getSettings().setUseWideViewPort(true);
Tôi đã thử phương pháp khác, sử dụng phương pháp chia tỷ lệ, nhưng nó sẽ không hoạt động ..... Tôi có chiều rộng cửa sổ (1024 pixel) và chiều rộng nội dung web cũng là 1024 pixel !! Vì vậy, quy mô không hoạt động .... Có phương pháp nào để có được thang đo chính xác không?
Hoặc .... có cách nào khác không? .... CẢM ƠN !!
// get the window width and height
Point outSize = new Point();
getWindowManager().getDefaultDisplay().getSize(outSize);
width = outSize.x;
height = outSize.y;
Log.i("Menuboard", "width: " + Integer.toString(width) + ", height: "
+ Integer.toString(height));
WebViewClient client = new WebViewClient() {
public void onPageFinished(WebView view, String url) {
int x = engine.getWidth();
int y = engine.getHeight();
Log.i("Menuboard", "web width: " + Integer.toString(x)
+ ", height: " + Integer.toString(y));
int scale1 = width * 100/x;
int scale2 = height * 100/y;
Log.i("Menuboard", "Scale1: " + Integer.toString(scale1)
+ ", Scale2: " + Integer.toString(scale2));
if (scale1 < scale2) {
engine.setInitialScale(scale1);
Log.i("Menuboard", "scale1");
} else if (scale1 > scale2) {
engine.setInitialScale(scale2);
Log.i("Menuboard", "scale2: " + Integer.toString(scale2));
}
}
};
engine = (WebView) (findViewById(R.id.webView1));
engine.loadUrl(string);
engine.getSettings().setBuiltInZoomControls(true);
engine.setPadding(0, 0, 0, 0);
engine.setWebViewClient(client);
Chỉ cần một số lưu ý:
Để mở rộng quy mô các webview:
engine = (WebView) (findViewById(R.id.webView1));
engine.loadUrl(www.example.com);
engine.getSettings().setBuiltInZoomControls(true);
engine.setPadding(0, 0, 0, 0);
engine.setInitialScale(50); // 0 - 100 where 100 is full scale
Để có được chiều rộng cửa sổ và height:
Point outSize = new Point();
getWindowManager().getDefaultDisplay().getSize(outSize);
width = outSize.x;
height = outSize.y;
kiểm tra liên kết này: http://stackoverflow.com/a/9756084/1168654 và http://stackoverflow.com/questions/11922861/how-to-justify-text-on-a-textview- made-easy-android/11922862 # 11922862 và http://stackoverflow.com/questions/15894644/how-we-get-the-text-of-a-texview-to-be-justified-dynamically/15894704#15894704 –