Android:将ImageView中的图像旋转90度但没有延迟

标签 android matrix bitmap rotation imageview

我正在开发一个游戏,用户需要点击 ImageView 中的图像来旋转它。在每个点击图像顺时针方向旋转 90 度。 但是图像从旧位置旋转到新位置需要时间。这阻碍了游戏体验。我使用了以下内容:

protected void onCreate(Bundle savedInstanceState)
{  
... 
...  
    imgview = (ImageView)findViewById(R.id.imageView1);  
    imgview.setOnClickListener(new OnClickListener() {
         @Override 
         public void onClick(View arg0) {
              Matrix matrix = new Matrix();
              matrix.postRotate(90); 
              Bitmap myImg = getBitmapFromDrawable(imgview.getDrawable());
              Bitmap rotated = Bitmap.createBitmap(myImg,0,0,myImg.getWidth(),myImg.getHeight(),matrix,true);
              imgview.setImageBitmap(rotated);
         }
});

我想知道是否有任何其他旋转方式图像 不会造成任何延迟

最佳答案

我也尝试过一次,除了使用动画之外找不到任何其他解决方案。我会怎么做。

private void rotate(float degree) {
    final RotateAnimation rotateAnim = new RotateAnimation(0.0f, degree,
            RotateAnimation.RELATIVE_TO_SELF, 0.5f,
            RotateAnimation.RELATIVE_TO_SELF, 0.5f);

    rotateAnim.setDuration(0);
    rotateAnim.setFillAfter(true);
    imgview.startAnimation(rotateAnim);
}

关于Android:将ImageView中的图像旋转90度但没有延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18735280/

相关文章:

r - 从R中的固定宽度文件读取矩阵

c++ - 如何从 HBITMAP 创建 Gdiplus::Bitmap,保留 alpha channel 信息?

java - 位图-Base64字符串-位图转换android

android - 全屏显示图像-失去质量的android

tensorflow - 如何在 tensorflow 中的二维张量中找到前 k 个值

r - 计算每组前3个元素时如何避免 "operations are possible only for numeric, logical or complex types"

android - 使用 Android Studio 0.4.0 的渲染问题

android - Activity 未全屏显示

java - 关闭点击操作的当前通知

java - ListView/Adapter 没有显示最后一项