我在Android中开发,并实现放大/缩小图像。我使用以下代码放大图像。
Button test1_btn = findViewById(R.id.test1_btn);
test1_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d(TAG,"test_btn");
sea_image.buildDrawingCache();
Bitmap bmp = sea_image.getDrawingCache();
int width = bmp.getWidth();
int height = bmp.getHeight();
float scaleWidth = (float) 2;
float scaleHeight = (float) 2;
Matrix matrix = new Matrix();
matrix.postScale(scaleWidth, scaleHeight);
Bitmap newbm = Bitmap.createBitmap(bmp, 0, 0, width, height, matrix,true);
sea_image.setImageBitmap(newbm);
}
});
图像的xml如下所示。
<ImageView
android:id="@+id/sea_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:src="@drawable/sea"/>
单击按钮可以多次放大图像。但是当图像的高度或图像宽度触及屏幕边缘时,它会停止放大。
问题: 如何无限制地放大图像?
提前致谢。