2

如果视频上传到 Facebook 失败,我有一个方法会被调用。如果调用该方法,那么我希望 aUILabel在上传失败时用户碰巧在的任何视图控制器中短暂出现。

这可能吗?

我之前问过一个关于 a 的类似问题UIAlertView,但我意识到在某些情况下,警报可能会对用户体验产生负面影响。

4

2 回答 2

0

您可以通过多种方式做到这一点 -

1)您可以添加UILabel到您的应用程序 main Window

2)如果您使用的是 aUINavigationController那么您将获得 current 的实例,viewcontroller然后可以添加UILabel到其视图中。

3)如果您在这种情况下使用 a ,您还可以通过访问's selected来获取UITabBarControllercurrent 的实例viewcontrollertabBarControllerviewcontroller.

于 2012-06-28T04:30:47.147 回答
0

我在下面发布的这段代码来自 facebook 的HackBook示例应用程序。他们所做的与您想要的相似。

- (void)showMessage:(NSString *)message {
CGRect labelFrame = messageView.frame;
labelFrame.origin.y = [UIScreen mainScreen].bounds.size.height - self.navigationController.navigationBar.frame.size.height - 20;
messageView.frame = labelFrame;
messageLabel.text = message;
messageView.hidden = NO;

// Use animation to show the message from the bottom then
// hide it.
[UIView animateWithDuration:0.5
                      delay:1.0
                    options: UIViewAnimationCurveEaseOut
                 animations:^{
                     CGRect labelFrame = messageView.frame;
                     labelFrame.origin.y -= labelFrame.size.height;
                     messageView.frame = labelFrame;
                 }
                 completion:^(BOOL finished){
                     if (finished) {
                         [UIView animateWithDuration:0.5
                                               delay:3.0
                                             options: UIViewAnimationCurveEaseOut
                                          animations:^{
                                              CGRect labelFrame = messageView.frame;
                                              labelFrame.origin.y += messageView.frame.size.height;
                                             //    UIView *messageView; declared in header
                                              messageView.frame = labelFrame;
                                          }
                                          completion:^(BOOL finished){
                                              if (finished) {
                                                  messageView.hidden = YES;
                                                  messageLabel.text = @"";
                                              }
                                          }];
                     }
                 }];
 }
于 2012-06-28T04:32:07.427 回答