Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
vovken1997
15 / 13 / 1
Регистрация: 08.07.2012
Сообщений: 190
#1

Анимация поворота - Программирование Android

12.02.2015, 16:21. Просмотров 379. Ответов 1
Метки нет (Все метки)

Здравствуйте!
Я столкнулся с такой проблемой. У меня поворачивается картинка на некоторый угол. Вроде бы всё хорошо, но когда анимация доходит до конца, виден быстрый рывок на начальное положение, а затем возвращение туда где и должна быть. Как мне это исправить, как сделать так, чтоб после поворота картинка не возвращалась на начальное положение, а оставалась на месте?

Пока что пробую так:
Кликните здесь для просмотра всего текста

Код
rot_int = (int)img1.getRotation();
			        	msg_in_int = Integer.parseInt(msg_in);
			        	
			        	if (msg_in_int<300){
			        		if(msg_in_int>-1){
			        		
			        	     	RotateAnimation rotate = new RotateAnimation (0, msg_in_int-rot_int, 
			   	        		     Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
			   	        	if ((msg_in_int-rot_int)>0){
			   	        		rotate.setDuration((msg_in_int-rot_int)*10); 
			   	        		animationDelay = (msg_in_int-rot_int)*10;
			   	        	}else {
			   	        		rotate.setDuration((msg_in_int-rot_int)*-10);
			   	        		animationDelay = (msg_in_int-rot_int)*-10;
			   	        	}
			   	        		
			   	        	rotate.setRepeatCount(0);
			   	      
			   	        	
			   	        	AnimationSet set = new AnimationSet (false);
			   	        	set.addAnimation(rotate);
			   	        	img1.startAnimation(set);
			   	        	
			   	        	
			   	        	set.setAnimationListener(new AnimationListener () {
			   	        	@Override
			   	        	 public void onAnimationEnd(Animation animation) {
			   	        	  Log.d("MY", "animation end");
			   	        	  	try{
			   	        	  	TimeUnit.MILLISECONDS.sleep(20);	
			   	        	  	} catch (InterruptedException e) {
									 Log.d(TAG, "Ошибка приостановки потока");
			   	        	  	}
			   	        	 img1.setRotation(msg_in_int);
			   	        	 }
			   	        	 
			   	        	 @Override
			   	        	 public void onAnimationRepeat(Animation animation) {
			   	        	  Log.d("MY", "animation repeat");
			   	        	 }

			   	        	 @Override
			   	        	 public void onAnimationStart(Animation animation) {
			   	        	  Log.d("MY", "animation start");
			   	        	 }
			   	        	});

Помогите пожалуйста.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2015, 16:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Анимация поворота (Программирование Android):

После поворота TextView занимает столько же места как и до поворота - Программирование Android
собственно как поворачивать средствами xml или в коде я знаю. Проблема в другом при повороте textview по горизонтали он занимает место как...

Запрет поворота экрана - Программирование Android
Здравствуйте. Как лучше всего запретить поворот экрана, но так, чтобы на планшетах он сразу был в альбомной ориентации, а на телефонах в...

Обработка поворота устройства - Программирование Android
Доброе утро! Появился вопрос о том, как правильно обрабатывать поворот устройства В Манифесте пишу так: &lt;activity...

Обработка события поворота устройства - Программирование Android
Как обработать событие поворота телефона? после поворота телефона такое ощущение что создается новое активити. Как сделать чтоб этого...

Как сделать анимацию объемного поворота? - Программирование Android
Что то типа этого: С помощью каких методов или что для этого используют?

Запрет поворота экрана после создания активити - Программирование Android
Как сделать сабж? Если в onCreate вызываю : setRequestedOrientation( ActivityInfo.SCREEN_ORIENTATION_NOSENSOR); И если...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Netscape
372 / 359 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
12.02.2015, 17:54 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Java
1
img1.animate().rotationBy(msg_in_int).setDuration(500).start();
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.02.2015, 17:54
Привет! Вот еще темы с ответами:

После поворота экрана view формы пропадают - Программирование Android
на главной активити в xml создано RadioGroup. на главной активити в методе onCreate есть такая строчка rGroup = (RadioGroup)...

Обработка поворота экрана. Сохранение введенной информации - Программирование Android
В приложении имеется n полей для ввода текста. Как правильно сохранять их количество введенную в них информацию при повороте экрана? ...

Запуск в ландшафтном режиме и запрет поворота. Как сделать? - Программирование Android
Добрый день. Есть приложение с кучей активити. Что сделать, чтобы это приложение запускалось только в ландшафтном режиме и не реагировало...

анимация - Программирование Android
background.setBackgroundResource(R.anim.error); mAnim = (AnimationDrawable) background.getBackground(); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru