0

我正在创建 Imageview 并使用 Matrix 来旋转。但背景不能旋转配偶形象。

我是背景旋转图像。帮我

         Bitmap myBitmap = BitmapFactory.decodeResource(getResources(),
     R.drawable.a);
     Display d = getWindowManager().getDefaultDisplay();
     int x = d.getWidth();
     int y = d.getHeight();
     ImageView img1 = (ImageView) findViewById(R.id.img1);
     Bitmap scaledBitmap = Bitmap.createScaledBitmap(myBitmap, y, x,
     true);
     Matrix matrix = new Matrix();
     matrix.postRotate(-45); // anti-clockwise by 90 degrees
     Bitmap rotatedBitmap = Bitmap
     .createBitmap(scaledBitmap, 0, 0, scaledBitmap.getWidth(),
     scaledBitmap.getHeight(), matrix, true);
     img1.setImageBitmap(rotatedBitmap);
     img1.setBackgroundResource(color.white);
4

1 回答 1

0

这是我用于将图像旋转到 90 度的代码。

         if(oldAngle == 0){
              newAngle = oldAngle + 90;
            }
            else if(oldAngle == 90)
                newAngle = oldAngle - 90;
              LinearLayout.LayoutParams layoutParams = (LinearLayout.LayoutParams) view.getLayoutParams();
              int centerX = layoutParams.leftMargin + (view.getWidth()/2);
              int centerY = layoutParams.topMargin + (view.getHeight()/2);
              RotateAnimation animation = new RotateAnimation(oldAngle, newAngle, centerX, centerY);
              animation.setDuration(0);
              animation.setRepeatCount(2);
              animation.setFillAfter(true);
              view.startAnimation(animation);

              oldAngle = newAngle;

希望它会帮助你...

于 2013-03-28T19:17:31.150 回答