Какой был бы лучший способ для принятия элемента UILabel
или UIButton
и с изменением текста на каком-то установленном временном интервале, скажем, 3 секунды с содержимым массив коллекции строк с анимацией затухания?Изменить текст UILabel/UIButton из массива строк со временем и анимацией
0
A
ответ
1
Используйте NSTimer
, чтобы запланировать изменение текста. Например, если ваш метод был вызван changeText
, вы можете запустить таймер с помощью [NSTimer scheduledTimerWithTimeInterval:3.0 target:self select:@selector(changeText) userInfo:nil repeats:YES];
, где 3.0
- это интервал времени в секундах.
Что касается анимации, у вас есть два варианта. Вы можете заставить текст исчезать, а затем исчезать, или вы можете заставить текст исчезать из одной строки в другую. Для бывшего (проявка затем из), использовать что-то вроде этого:
[UIView animateWithDuration:0.5 animations:^{
textLabel.alpha = 0.0f;
} completion:^(BOOL finished) {
textLabel.text = newString;
[UIView animateWithDuration:0.5 animations:^{
textLabel.alpha = 1.0f;
}];
}];
Это угасает текстовую метку в 0,5 секунды (путем установки альфа до 0), а затем устанавливает текст NewString и исчезает ярлык . назад в
в качестве альтернативы, чтобы текст увядает от одного значения к другому:
CATransition *animation = [CATransition animation];
animation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
animation.type = kCATransitionFade;
animation.duration = 1.00;
[textLabel.layer addAnimation:animation forKey:@"kCATransitionFade"];
textLabel.text = newString;
Смежные вопросы
- 1. Изменить svg.js текст в группе с анимацией
- 2. Изменить значения RGB цвета со временем
- 3. Заменить текст со временем в JavaScript
- 4. Текст JavaScript, изменяющийся со временем взад и вперед (например: 1,2,3,2,1,2,3,2,1,2,3 ...)
- 5. Как со временем изменить структуру данных поля?
- 6. как отсортировать два массива json со временем
- 7. preg_replace() конкретный текст со значением из массива
- 8. Прогресс событий со временем
- 9. Изменить цвет с помощью css со временем назад и вперед
- 10. AngularJS - Измените текст непрерывно из массива строк
- 11. Вопрос GStreamer со временем
- 12. Переупорядочивание строк UITableView программно с анимацией
- 13. Изменить текст из массива нажатием кнопки
- 14. Java - работа со временем (часами и минутой)
- 15. Python: Работа со временем
- 16. D3js нарисовать со временем?
- 17. Взаимодействие со временем
- 18. Codefirst ухудшается со временем
- 19. GetCurrentApplicationCallbackUri меняется со временем
- 20. Функции, ускоряющиеся со временем
- 21. Распределение вероятности со временем?
- 22. Создание массива строк со значениями
- 23. Отклонить линии со временем
- 24. Переименовать файл со временем создания и временем в пакете Windows
- 25. Проблемы со временем
- 26. Ускорьте шар со временем
- 27. Расчет со временем окончания
- 28. Вращайте GameObject со временем
- 29. Ограничение очереди со временем
- 30. getdate со временем 2359
Спасибо за ответ. – Diamond
@Diamond Код идет в функции, выполняемой таймером. В моем примере это будет называться 'changeText', поэтому вы бы объявили метод, подобный' - (void) changeText {...} ' – ttarik
К сожалению, я имел в виду, что к методу' changeText' следует добавить только код анимации , Вы должны запустить таймер при загрузке вашего представления ('viewDidLoad'). Мой код также не включает в себя выбор текстовой строки из вашего массива, который также должен идти в 'changeText'. Тем не менее, я укажу, что StackOverflow не является местом, чтобы просить людей писать блоки кода для вас. Если вы не уверены в базовых принципах Objective-C и iOS SDK, возможно, изучите некоторые обучающие программы для начинающих. Существует много информации о таймерах, анимации/затухающем тексте и случайных строках - на SO и в других местах. – ttarik