如何创建像应用程序内弹出警报的Instagram

时间:2011-02-05 07:19:46

标签: iphone ios

如果你使用Instagram应用程序,它底部有一个新闻标签菜单。如果我们收到任何消息,它将弹出(如在mac中咆哮)1-2秒,以获取您收到的新消息的附加信息。它绝对不是UIActionSheet或UIAlertView。

任何人都知道如何编码吗?

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

您可以执行以下操作:

  1. 创建可以使用要显示的文本启动的自定义视图。
  2. 在所述视图的init-function中,创建一个UILabel,设置文本,resizeToFit标签,然后调整视图大小,使标签适合内部。
  3. 在视图中使用两个CGRect来存储视图将具有的框架,何时可见以及何时不可见。
  4. 将视图的框架设置为invisibleFrame CGRect。
  5. 创建一个将在视图中滑动的方法:

    [UIView animateWithDuration:1.0
                  delay:0.0 
                options:UIViewAnimationOptionBeginFromCurrentState | UIViewAnimationOptionCurveEaseOut
                    animations:^{ 
                 self.frame = frameVisible;
                         } 
             completion:^(BOOL finished) {
                     [self onSlideOutFinished];
                         }];
    
  6. 创建一个将滑出视图的方法(在一段时间后,使用带有延迟的动画块)。

  7. 在UIViewController中创建一个方法,负责显示将创建消息视图新实例的视图。
  8. 基本上就是这样。你可以做的是让UIViewController监听触发消息视图的NSNotifications。您还可以通过将消息视图存储在数组中来动态定位消息视图,并根据当前可见的其他消息视图的帧计算新消息视图的可见帧。

    我希望这有点可以理解;)