imageView.setPosLeft();
}
});
// 向右移动
Button botton1 = (Button) findViewById(R.id.buttonRight);
botton1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
imageView.setPosRight();
}
});
// 左旋转
Button botton2 = (Button) findViewById(R.id.buttonRotationLeft);
botton2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
imageView.setRotationLeft();
}
});
// 右旋转
Button botton3 = (Button) findViewById(R.id.buttonRotationRight);
botton3.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
imageView.setRotationRight();
}
});
// 缩小
Button botton4 = (Button) findViewById(R.id.buttonNarrow);
botton4.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
imageView.setNarrow();
}
});
// 放大
Button botton5 = (Button) findViewById(R.id.buttonEnlarge);
botton5.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
imageView.setEnlarge();
}
});
super.onCreate(savedInstanceState);
}
class ImageView extends View {
Paint mPaint \= null;
Bitmap bitMap \= null;
Bitmap bitMapDisplay \= null;
int m\_posX = 120;
int m\_posY = 50;
int m\_bitMapWidth = 0;
int m\_bitMapHeight = 0;
Matrix mMatrix \= null;
float mAngle = 0.0f;
float mScale = 1f;//1为原图的大小
public ImageView(Context context) {
super(context);
mPaint \= new Paint();
mPaint.setFlags(Paint.ANTI\_ALIAS\_FLAG);
bitMap \= BitmapFactory.decodeResource(this.getResources(),
R.drawable.image);
bitMapDisplay \= bitMap;
mMatrix \= new Matrix();
// 获取图片宽高
m\_bitMapWidth = bitMap.getWidth();
m\_bitMapHeight \= bitMap.getHeight();
}
// 向左移动
public void setPosLeft() {
m\_posX \-= 10;
}
// 向右移动
public void setPosRight() {
m\_posX += 10;
}
// 向左旋转
public void setRotationLeft() {
mAngle\--;
setAngle();
}
// 向右旋转
public void setRotationRight() {
mAngle++;
setAngle();
}
// 缩小图片
public void setNarrow() {
if (mScale > 0.5) {
mScale \-= 0.1;
setScale();
}
}
// 放大图片
public void setEnlarge() {
if (mScale < 2) {
mScale += 0.1;
setScale();
}
}
// 设置缩放比例
public void setAngle() {
mMatrix.reset();
mMatrix.setRotate(mAngle);
bitMapDisplay \= Bitmap.createBitmap(bitMap, 0, 0, m\_bitMapWidth,
m\_bitMapHeight, mMatrix, true);
}
// 设置旋转比例
public void setScale() {
mMatrix.reset();
//float sx X轴缩放
尾声
以薪资待遇为基础,以发展为最终目标,要在高薪资的地方,谋求最好的发展!
下面是有几位Android行业大佬对应上方技术点整理的一些进阶资料。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
(img-0vLK9Ucb-1714668986599)]
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!