【问题标题】:Create segue based on a downloaded config file根据下载的配置文件创建 segue
【发布时间】:2014-06-22 18:51:37
【问题描述】:

要进行高级 A/B 测试,我希望能够基于配置文件创建 segue。

在启动时,我的应用会下载一个 JSON 文件,其中包含动态创建主页部分的信息。

例如,如下所示的 JSON 将在主视图上创建 2 个按钮。第一个是蓝色的,标签为“button1”,第二个是红色,标签为“button2”。

{
"elements":
    "0": {
        "type": "button",
        "label": "button1"
        "color": "blue"
    },
    "1": {
        "type": "button",
        "label": "button2"
        "color": "red"
    }
};

现在,我想在 JSON 中添加类似的内容:"goto": "OptionViewController" 其中 goto 键的值是单击按钮时显示的视图。

我希望能够添加或删除主页面的按钮(我知道如何做到这一点)并远程更改链接到按钮的视图(这是我的问题),只需更改下载的 JSON。

问题在于,从一个视图移动到另一个视图,我不仅需要新视图的名称,还需要 segue。

This post 表示无法以编程方式创建 segue。

我找到的唯一解决方案是为每个视图创建一个与其他所有视图的 segue,但这很脏。

【问题讨论】:

  • 你在使用故事板吗?
  • 是的,我正在使用情节提要
  • 请帮助我进一步理解:你不能在情节提要中创建转场,然后像这样执行转场:[self performSegueWithIdentifier:@"showManufacturers" sender:self];
  • 我已经更新了我的帖子。

标签: ios objective-c storyboard segue ab-testing


【解决方案1】:

如果您正在使用 Storyboard,并且如果您想要转入的视图控制器已在其中定义,并且标识符为“OptionViewController”,那么您可以这样做:

UIStoryboard* storyboard = [UIStoryboard storyboardWithName:@“Main” bundle:nil];
OptionViewController *ovc = [storyboard instantiateViewControllerWithIdentifier:@“OptionViewController”];

[self presentViewController:ovc
                   animated:YES 
                 completion:nil];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-04-09
    • 2020-09-04
    • 1970-01-01
    • 1970-01-01
    • 2016-07-13
    • 1970-01-01
    • 1970-01-01
    • 2020-12-15
    相关资源
    最近更新 更多