Используйте библиотеку рендеринга и кэширования изображений Picasso и используйте ее метод для настройки изображений.
ImageView img = findViewById(R.id.image);
Picasso.with(ctx)
.load(res)
.placeholder(R.drawable.loading)
.error(R.mipmap.ic_launcher)
.resize(Main_page.getScreenWidth(ctx),Main_page.getScreenHeight(ctx))
.centerInside()
.into(img);
Также получите ширину экрана и высоту экрана, чтобы изменить размер изображения до размера экрана, а затем используйте centerInside (), чтобы изображение вошло в веб-представление.
Вы можете получить ширину и высоту экрана следующим образом.
public static int getScreenWidth(Context c) {
WindowManager wm = (WindowManager) c.getSystemService(Context.WINDOW_SERVICE);
Display display = null;
if (wm != null) {
display = wm.getDefaultDisplay();
}
Point size = new Point();
if (display != null) {
display.getSize(size);
}
return size.x;
}
public static int getScreenHeight(Context c) {
WindowManager wm = (WindowManager) c.getSystemService(Context.WINDOW_SERVICE);
Display display = null;
if (wm != null) {
display = wm.getDefaultDisplay();
}
Point size = new Point();
if (display != null) {
display.getSize(size);
}
return size.y;
}
Для просмотра в Интернете используйте код:
WebView img = findViewById(R.id.image);
img.getSettings().setBuiltInZoomControls(true);
img.getSettings().setLoadWithOverviewMode(true);
img.getSettings().setUseWideViewPort(true);
img.loadUrl(res);
} else {
setContentView(R.layout.zoominwithoutnet);
getWindow()
.setLayout(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT
);