我在旋转图像位图时遇到问题。当我旋转图像时,它会失去分辨率。我想每次用户点击Button.Code on button点击时旋转图像:
matrix.postRotate(90);
bitmap = Bitmap.createBitmap(bitmap_rotate, 0, 0, bitmap_rotate.getwidth(),bitmap_rotate.getHeight(),matrix, true);
d_reflect = new BitmapDrawable(bitmap);
image_view.removeAllViews();
image_view.setBackgroundDrawable(d_reflect);
其中image_view是LinearLayout,我想设置旋转LinearLayout.It每次旋转图像时都会丢失它的分辨率。我的原始位图大小是300x300。我已经搜索了大量的搜索解决方案,但它们都没有为我工作。 任何解决方案将不胜感激。谢谢。
答案 0 :(得分:1)
以下是在图像视图内平滑旋转图像而不创建额外位图的代码。
Matrix m = new Matrix();
m.setRotate(degrees);
image_view.setImageMatrix(m);
答案 1 :(得分:0)
创建具有所需宽度和高度的缩放位图:
Bitmap bmp = Bitmap.createScaledBitmap(bitmap_rotate, 300, 300, false);