3

在 iOS 中显示弹出窗口的最正确/最有效/最新的方式是什么?

A la TweetBot:

在此处输入图像描述

我用过的方法:

  • 从单独的 nib 显示一个弹出窗口并使用 loadNibNamed

  • 从主情节提要弹出一个带有 instantiateViewControllerWithIdentifier 的弹出窗口

  • 纯粹以编程方式创建/呈现弹出窗口*

*我宁愿不使用这种方法,因为我的弹出窗口有一个相当复杂的自定义 UI

此外,一旦我从上述任何方法加载场景,我不知道如何将弹出窗口中的 UI 元素与插座/操作(协议?代表?)

如果您能指出我正确的方向,以最正确的方式创建/显示/使用弹出窗口,那就太棒了。

让我知道如果我太模糊,我可以添加更多细节。

4

1 回答 1

0

编辑

嗯,输入我的答案后才看到你的截图。要做到这一点,您可以使用 UIAlertView 提供的功能。我很确定 TweetBot 的人也是这样做的。此处的此链接显示了一篇博客文章,可让您做您需要的事情。

除非你想疯狂定制,否则有几个解决方案可以让你完成它。像这样的东西

完成编辑

您可以使用的一件事是 Segue。假设您正在使用 StoryBoard,并且当您点击一个按钮并带来一个弹出视图时,您可以通过以下方式将它们连接起来:

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
    if([[segue identifier] isEqualToString:@"ViewToBringIn"]) {
        ViewController *vc = [segue destinationViewController];
        vc.navigationItem.title = @"some title";
    }
}

使用 Segues 的另一种方法是通过 StoryBoard UI。单击您想要的视图,这将在 Connection Inspector 中显示类似于屏幕截图的内容:

Segues 连接检查器

但是,如果您使用的是 nib 文件,那么您仍然可以通过代码创建它们并将它们推送到视图中(根据您想要的格式)。当然,视图的设计是通过 Interface Builder 完成的。

于 2012-10-03T19:21:19.267 回答