我正在调整 ImageView 中的图像大小,但调整大小后 ImageView 大小保持不变,所以如果我缩小我会看到黑色区域,如果我放大图像会被裁剪。如何自动调整 ImageView 的大小来包装我的图像?问题是图像的大小也保持不变。我的图像位于可以滚动 X 和 Y 方向的自定义滚动视图中。请不要让我参考 ImageView 缩放示例,因为我看过它们。
ImageView map = (ImageView) findViewById(R.id.imageViewMap);
Bitmap mapIm = BitmapFactory.decodeResource(getResources(),R.drawable.myMap);
map.setImageBitmap(mapIm);
final Matrix zoommatrix = new Matrix();
zoomOut.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
float[] centerpoint = {map.getWidth()/2.0f, map.getHeight()/2.0f};
zoommatrix.postScale(0.9f, 0.9f, centerpoint[0], centerpoint[1]);
map.setImageMatrix(zoommatrix);
}
});
zoomIn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
float[] centerpoint = {map.getWidth()/2.0f, map.getHeight()/2.0f};
zoommatrix.postScale(1.1f, 1.1f, centerpoint[0], centerpoint[1]);
map.setImageMatrix(zoommatrix);
Log.d(TAG, "Width: "+map.getWidth()+" Height: "+map.getHeight()); //always the same
Log.d(TAG, "Width: "+mapIm.getWidth()+" Height: "+mapIm.getHeight()); //always the same
}
});