Вы можете сделать следующее:
- Создать настраиваемое представление, которое может быть инициировано с текстом, который будет отображаться.
- В init-функции указанного вида создайте UILabel, установите текст, resizeToFit метку, а затем измените размер представления так, чтобы метка входила внутрь.
- Используйте два CGRects внутри представления, чтобы сохранить как фрейм, который будет иметь вид, когда он будет виден, так и когда он невидим.
- Установите кадр вида на невидимый кадр.
создать метод, который будет скользить в представлении:
[UIView animateWithDuration:1.0
delay:0.0
options:UIViewAnimationOptionBeginFromCurrentState | UIViewAnimationOptionCurveEaseOut
animations:^{
self.frame = frameVisible;
}
completion:^(BOOL finished) {
[self onSlideOutFinished];
}];
создать метод, который будет выскользнуть вид (по истечении определенного времени, используя блок анимации с задержкой).
- Создайте метод внутри UIViewController, ответственный за отображение представления, которое создаст новые экземпляры вашего представления сообщения.
Это в основном это. То, что вы можете сделать, - это заставить UIViewController прослушивать NSNotifications, которые запускают представление сообщения. Вы также можете динамически позиционировать представления сообщений, сохраняя их в массиве и вычисляя видимый кадр новых представлений сообщений в соответствии с кадрами видимых в настоящее время и других видов сообщений.
Я надеюсь, что было несколько понятно;)