用android写一份图像旋转代码
时间: 2024-01-26 14:04:52 浏览: 95
图像旋转代码
好的,以下是一个简单的 Android 图像旋转代码示例:
```java
public class MainActivity extends AppCompatActivity {
private ImageView imageView;
private Button rotateButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageView = findViewById(R.id.imageView);
rotateButton = findViewById(R.id.rotateButton);
rotateButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// 旋转角度为90度
rotateImage(imageView, 90);
}
});
}
private void rotateImage(ImageView imageView, int degree) {
Matrix matrix = new Matrix();
matrix.postRotate(degree);
Bitmap bitmap = ((BitmapDrawable) imageView.getDrawable()).getBitmap();
Bitmap rotatedBitmap = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(), bitmap.getHeight(), matrix, true);
imageView.setImageBitmap(rotatedBitmap);
}
}
```
需要注意的是,这里的 `imageView` 是一个 `ImageView` 控件,`rotateButton` 是一个 `Button` 控件,在 `onCreate` 方法中获取它们。当点击 `rotateButton` 按钮时,调用 `rotateImage` 方法对 `imageView` 中的图片进行旋转。
`rotateImage` 方法中,我们首先创建一个 `Matrix` 对象,然后调用 `postRotate` 方法进行旋转。接着,获取 `imageView` 中的图片并将其转换为 `Bitmap` 对象,最后调用 `Bitmap.createBitmap` 方法来创建一个旋转后的 `Bitmap` 对象,并将其设置给 `imageView` 控件显示出来。
阅读全文