matrix用完后,图片的位置如何判定? 图片没有旋转的时候,可以用利用图片的顶点坐标和图片的宽度、长度来判断当前触点是否在图片的范围内,但是当使用Matrix.setRotate()方法后,怎么来判断触点和图片的关系呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看你绕哪个点旋转了!setRotate不是可以设置绕一个定点旋转么?一般都是默认绕中点!还有就是看你的旋转的角度了!你确定这两点就可以根据算法计算出触点与图片的关系了! final int widthOrig = bmp.getWidth(); final int heightOrig = bmp.getHeight(); ScaleAngle=ScaleAngle+90; if(ScaleAngle>360) { ScaleAngle=90; } int newWidth = widthOrig * ScaleTimes; int newHeight = heightOrig * ScaleTimes; float scaleWidth = ((float) newWidth) / widthOrig; float scaleHeight = ((float) newHeight) / heightOrig; Matrix matrix = new Matrix(); /* 使用Matrix.postScale设定维度 */ matrix.postScale(scaleWidth, scaleHeight); /* 使用Matrix.postRotate方法旋转Bitmap*/ //matrix.postRotate(5*ScaleAngle); // matrix.setRotate(5*ScaleAngle); matrix.setRotate(ScaleAngle); /* 建立新的Bitmap对象 */ Bitmap resizedBitmap = Bitmap.createBitmap(bmp, 0, 0, widthOrig, heightOrig, matrix, true); /**/ BitmapDrawable myNewBitmapDrawable = new BitmapDrawable(resizedBitmap); imgView.setImageDrawable(myNewBitmapDrawable); 这是旋转代码,默认围绕中间旋转的 旋转之后你再get一次imageview的current的长宽,再辨别一次看看。 TranslateAnimation问题 android4.0 模拟器 为什么怎样设置成 pad 【急】求助Android屏保的实现问题 Android 环境搭建有问题 求助!关于Android Bluetooth android调用JAR的问题 按键效果 关于应用ICON的尺寸问题 Android 进程间通信的争辩 请问如何将mChannels 中的内容通过Log.d打印输出? viewgroup 如何与adapter一同使用。。 一个关于graphics的问题,求android jni高手指导
final int widthOrig = bmp.getWidth();
final int heightOrig = bmp.getHeight();
ScaleAngle=ScaleAngle+90;
if(ScaleAngle>360)
{
ScaleAngle=90;
}
int newWidth = widthOrig * ScaleTimes;
int newHeight = heightOrig * ScaleTimes;
float scaleWidth = ((float) newWidth) / widthOrig;
float scaleHeight = ((float) newHeight) / heightOrig;
Matrix matrix = new Matrix();
/* 使用Matrix.postScale设定维度 */
matrix.postScale(scaleWidth, scaleHeight);
/* 使用Matrix.postRotate方法旋转Bitmap*/
//matrix.postRotate(5*ScaleAngle);
// matrix.setRotate(5*ScaleAngle);
matrix.setRotate(ScaleAngle);
/* 建立新的Bitmap对象 */
Bitmap resizedBitmap =
Bitmap.createBitmap(bmp, 0, 0, widthOrig, heightOrig, matrix, true);
/**/
BitmapDrawable myNewBitmapDrawable =
new BitmapDrawable(resizedBitmap);
imgView.setImageDrawable(myNewBitmapDrawable); 这是旋转代码,默认围绕中间旋转的