Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
vovken1997
15 / 13 / 1
Регистрация: 08.07.2012
Сообщений: 190
1

Анимация поворота

12.02.2015, 16:21. Просмотров 951. Ответов 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
Ответы с готовыми решениями:

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

Обработка поворота устройства
Доброе утро! Появился вопрос о том, как правильно обрабатывать поворот...

Запрет поворота экрана
Здравствуйте. Как лучше всего запретить поворот экрана, но так, чтобы на...

Обработка события поворота устройства
Как обработать событие поворота телефона? после поворота телефона такое...

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

1
Netscape
374 / 361 / 52
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
12.02.2015, 17:54 2
Лучший ответ Сообщение было отмечено vovken1997 как решение

Решение

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

Обработка поворота экрана. Сохранение введенной информации
В приложении имеется n полей для ввода текста. Как правильно сохранять их...

Запрет поворота экрана после создания активити
Как сделать сабж? Если в onCreate вызываю : setRequestedOrientation(...

После поворота экрана view формы пропадают
на главной активити в xml создано RadioGroup. на главной активити в методе...


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

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

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