android旋转图像Matrix

package com.weipeng.xuexi20160121;


import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.AttributeSet;
import android.view.View;
import android.widget.FrameLayout;


public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        FrameLayout frameLayout = (FrameLayout) findViewById(R.id.myfl);
        frameLayout.addView(new MyView(this));

    }
    class MyView extends View{
        public MyView(Context context) {
            super(context);
        }

        public MyView(Context context, AttributeSet attrs) {
            super(context, attrs);
        }

        @Override
        protected void onDraw(Canvas canvas) {
            super.onDraw(canvas);
            Paint paint = new Paint();//定义画笔
            Bitmap bitmap = BitmapFactory.decodeResource(MainActivity.this.getResources(),R.drawable.hehe);
            canvas.drawBitmap(bitmap,0,0,paint);//绘制背景图
            Bitmap bitmap_rabbit = BitmapFactory.decodeResource(MainActivity.this.getResources(), R.drawable.hehe);
            Matrix matrix = new Matrix();
            matrix.setRotate(30);//0,0为轴心旋转30            canvas.drawBitmap(bitmap_rabbit, matrix, paint);
            Matrix m = new Matrix();
            m.setRotate(90,87,87);//87,87为轴心旋转90            canvas.drawBitmap(bitmap_rabbit,m,paint);
        }
    }

}

你可能感兴趣的:(android)