要进行高级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键的值是单击按钮时显示的视图。
我希望能够添加或删除mainPage的按钮(我看到该怎么做)并远程更改链接到按钮的视图(这是我的问题),只需更改下载的JSON即可。
问题是,从一个视图移动到另一个视图,我不需要新视图的名称,我也需要segue。
This post说无法以编程方式创建segue。
我找到的唯一解决方案是每个视图都为每个其他视图创建一个segue,但这非常脏。
答案 0 :(得分:2)
如果您正在使用Storyboard,并且如果要在其中定义要转换的视图控制器,标识符为" OptionViewController",则可以执行以下操作:
UIStoryboard* storyboard = [UIStoryboard storyboardWithName:@“Main” bundle:nil];
OptionViewController *ovc = [storyboard instantiateViewControllerWithIdentifier:@“OptionViewController”];
[self presentViewController:ovc
animated:YES
completion:nil];