Я пытаюсь изменить размер ImageView
до 1080x1920 , приведенный ниже код работает, но он делает ImageView
немного меньше, и когда я сохраняю ImageView
как Bitmap
Iполучить 722x1284 в качестве разрешения изображения, мой способ неправильно изменяет размер представления изображения?
void initializeStickerView() {
mDensity = getResources().getDisplayMetrics().density;
actionBarHeight = (int) (110 * mDensity);
bottombarHeight = (int) (60 * mDensity);
viewWidth = getResources().getDisplayMetrics().widthPixels;
viewHeight = getResources().getDisplayMetrics().heightPixels - actionBarHeight - bottombarHeight;
viewRatio = (double) viewHeight / (double) viewWidth;
bmRatio = (double) (1920) / (double) (1080);
if (bmRatio < viewRatio) {
bmWidth = viewWidth;
bmHeight = (int) (((double) viewWidth) * ((double) (1920) / (double) (1080)));
} else {
bmHeight = viewHeight;
bmWidth = (int) (((double) viewHeight) * ((double) (1080) / (double) (1920)));
}
final RelativeLayout.LayoutParams lparams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
lparams.addRule(RelativeLayout.CENTER_IN_PARENT);
lparams.height = bmHeight;
lparams.width = bmWidth;
stickerView.setLayoutParams(lparams);
stickerView.setBackgroundColor(Color.WHITE);
stickerView.setLocked(false);
stickerView.setConstrained(true);
}