如何使用按钮缩放 Android 中的图像视图?
how to scale a imageview in Android with a button?
我正在构建这个应用程序,我希望它可以缩放图像视图中心。
这是我的头像
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageView"
android:src="@mipmap/lamp" />
和两个按钮 + 和 -
<Button
android:id="@+id/plusBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="+"
android:layout_alignTop="@+id/minusBtn"
android:layout_alignEnd="@+id/cameraImageButton2" />
<Button
android:id="@+id/minusBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="-"
android:layout_above="@+id/videoOnlineImageButton"
android:layout_alignStart="@+id/videoOnlineImageButton" />
我想当你点击减去图像时缩小。假设它是 100x100 它可能变成 90x90
当您单击加号以增加大小时。让我们说从 100x100 到 110x110
等等……
我需要图像缩放并保持在屏幕中央。所以它应该以某种方式从其默认大小向上或向下缩放。
感谢 Alpha mori,这对我有用!
plusbtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
float x = imagview.getScaleX();
float y = imagview.getScaleY();
imagview.setScaleX((float) (x + 5));
imagview.setScaleY((float) (y + 5));
}
});
minusbtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
float x = imagview.getScaleX();
float y = imagview.getScaleY();
imagview.setScaleX((float) (x - 5));
imagview.setScaleY((float) (y - 5));
}
});
plusbtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
float x = imagview.getScaleX();
float y = imagview.getScaleY();
imagview.setScaleX((float) (x + 5));
imagview.setScaleY((float) (y + 5));
}
});
minusbtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
float x = imagview.getScaleX();
float y = imagview.getScaleY();
imagview.setScaleX((float) (x - 5));
imagview.setScaleY((float) (y - 5));
}
});
我正在构建这个应用程序,我希望它可以缩放图像视图中心。
这是我的头像
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageView"
android:src="@mipmap/lamp" />
和两个按钮 + 和 -
<Button
android:id="@+id/plusBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="+"
android:layout_alignTop="@+id/minusBtn"
android:layout_alignEnd="@+id/cameraImageButton2" />
<Button
android:id="@+id/minusBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="-"
android:layout_above="@+id/videoOnlineImageButton"
android:layout_alignStart="@+id/videoOnlineImageButton" />
我想当你点击减去图像时缩小。假设它是 100x100 它可能变成 90x90
当您单击加号以增加大小时。让我们说从 100x100 到 110x110
等等……
我需要图像缩放并保持在屏幕中央。所以它应该以某种方式从其默认大小向上或向下缩放。
感谢 Alpha mori,这对我有用!
plusbtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
float x = imagview.getScaleX();
float y = imagview.getScaleY();
imagview.setScaleX((float) (x + 5));
imagview.setScaleY((float) (y + 5));
}
});
minusbtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
float x = imagview.getScaleX();
float y = imagview.getScaleY();
imagview.setScaleX((float) (x - 5));
imagview.setScaleY((float) (y - 5));
}
});
plusbtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
float x = imagview.getScaleX();
float y = imagview.getScaleY();
imagview.setScaleX((float) (x + 5));
imagview.setScaleY((float) (y + 5));
}
});
minusbtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
float x = imagview.getScaleX();
float y = imagview.getScaleY();
imagview.setScaleX((float) (x - 5));
imagview.setScaleY((float) (y - 5));
}
});