Android: повернуть изображение в ImageView на 90 градусов, но без задержки

Я разрабатываю игру, где пользователю нужно нажать на изображение в 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); } 

Вам не нужно вращать объект, поворот изображения должен быть достаточным. Если вы нацеливаете API> = 11, вы всегда можете это сделать.

 mImageView.setRotation(angle); 

Приветствия.

Короткий метод

View.animate().rotation(90).setDuration(0);

Вы пытались использовать пользовательское представление, расширяющее изображение и поворачивая изображение в фоновом потоке?

Intereting Posts
Как должны быть организованы данные для SimpleExpandableListAdapter Android RecyclerView Scroll не работает после редактирования макета Реализация HTML-подобной разбивки на страницы Как выполнить следующий запрос с помощью Greendao? AsycTask Throwing IllegalStateException – фрагмент, не привязанный к действию Установка minHeight в RelativeLayout, отключает alignBaseline? Java.io.IOException: Ошибка установления связи SSL: отказ в библиотеке SSL, обычно ошибка протокола Как определить размер экрана устройства (маленький, обычный, большой, xlarge) с использованием кода? Ленивая загрузка из SQLite Как написать Android.mk для библиотеки с помощью Gnu makefile Как запустить эмулятор Android автоматически из Eclipse? Возможность одновременного нажатия на два элемента в RecyclerView Android, самый быстрый способ рисовать растровое изображение на холст Что делает -webkit-text-size-adjust? Настройка Android: идентификатор для компонента линейного компоновки