У меня есть ярлык в верхней части моего UIView.Я показываю некоторые сообщения на нем через массив с помощью таймера. Но теперь я хочу, чтобы эти сообщения отображались в стиле MARQUEE. Я не получаю никакого способа начать. Любой исходный код, методы использования, любой стиль анимации, любой другой подход. Заранее спасибоКак добавить выделение на ярлык
3
A
ответ
9
Вот идея:.
- Набор clipsToBounds к истинным на UIView, что ваш UILabel сидит в
- Затем запустите блок UIViewAnimations (смотрите в документации для того, как использовать его , его очень просто)
- Создать новую метку с его рамой, установленной в положение, которое находится за пределами границ вмещающего UIView
- установить позицию предыдущего лейбла где-то слева за пределами ограждающего UIView
- установите положение следующей метки в том месте, где раньше использовалась предыдущая метка.
- совершить анимации
Это должно дать вам раздвижную анимацию один ярлык трогания экрана и новую метку двигающуюся на экране.
Вам нужно будет поиграть с свойством animationDuration и точными позиционирующими и размерными свойствами ярлыков и представлений, чтобы получить его в порядке, но это должно быть довольно просто.
4
Я последовал за вашу идею, и я сделал это:
* Я создал вид контейнера.
messageView = [[UIView alloc] initWithFrame:CGRectMake(27, 0, 235, 19)];
[messageView setClipsToBounds:YES];//With This you prevent the animation to be drawn outside the bounds.
* После этого я создал UILabel с текстом, который будет отображаться и добавил к моему контейнерной
lblTime = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 235, 19)];
[lblTime setBackgroundColor:[UIColor clearColor]];
[messageView addSubview:lblTime];
* Наконец, я создал такую функцию:
- (void)sendNotification:(NSString*)txt{
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:3.5];
[UIView setAnimationTransition:UIViewAnimationTransitionNone forView:messageView cache:YES];
[lblTime setText:txt];
[lblTime setTextAlignment:UITextAlignmentLeft];
lblTime.frame = CGRectMake(260, 0, 258, 19);
[UIView commitAnimations];
}
Смежные вопросы
- 1. Как добавить ярлык на участок
- 2. Как добавить данные на ярлык
- 3. Добавить ярлык на BlackBerry ListField
- 4. Добавить ярлык на вложенный маршрут
- 5. Добавить вид размытия на ярлык?
- 6. Добавить ярлык на Android Lolilpop
- 7. Как добавить ярлык на flowLayoutPanel1 сперва index0?
- 8. Как добавить пользовательский ярлык на uitextview?
- 9. Как добавить результат JSON на ярлык?
- 10. Как добавить знак плюса минус на ярлык
- 11. Как добавить ярлык приложения на Android?
- 12. Как добавить ярлык на экран «Все приложения»
- 13. Как добавить изображение на ярлык в SWT
- 14. Как добавить ярлык на экране настроек
- 15. Как добавить ярлык к оси
- 16. Как добавить ярлык внутри ScrollView
- 17. Как добавить ярлык поверх градиента?
- 18. Как добавить ярлык в navgrid
- 19. Как удалить выделение/выделение на AdvancedDataGrid
- 20. ярлык, чтобы добавить строку
- 21. Добавить ярлык в UIAlertController?
- 22. Добавить ярлык на линию в Highcharts
- 23. Добавить ярлык в UITextField
- 24. Как добавить ярлык на элемент кнопки на панели?
- 25. ярлык и добавить легенды на график плотности
- 26. D3.js добавить ярлык на гистограмму
- 27. добавить ярлык к заполненному.contour
- 28. Как установить ярлык мыши на ярлык динамически
- 29. NetBeans GUI Builder: Добавить gifs на ярлык
- 30. Добавить ярлык поверх Picturebox
не является MARQUEE устарел? Вы не должны его использовать. Я считаю, что вы можете получить тот же эффект с javascript. –
@MercerTraieste Я не думаю, что этот вопрос задает вопрос о теге HTML 'marquee'. Речь идет о достижении такого же стиля, как тег marquee, использующий класс UILabel в iPhone SDK. – Jasarien
[Этот вопрос] (http://stackoverflow.com/questions/430942/resizable-uilabel-which-scrolls-across-the-screen) очень близок к тому, что вы просите. –