首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >斯威夫特- UIStoryboardSegue编程弹出ViewController

斯威夫特- UIStoryboardSegue编程弹出ViewController
EN

Stack Overflow用户
提问于 2015-06-02 13:13:53
回答 3查看 8.3K关注 0票数 2

我通过编程方式将UIButton附加到navigationBar上:

代码语言:javascript
复制
catButton.addTarget(self, action: "oc:", forControlEvents: .TouchUpInside)
var catBarButton:UIBarButtonItem = UIBarButtonItem(customView: catButton)
self.navigationItem.setRightBarButtonItem(catBarButton, animated: false)

当函数oc()被触发时,我希望弹出视图控制器

代码语言:javascript
复制
let segue = UIStoryboardSegue(identifier: "oc", source: self, destination: MDComDBCatsTVC())
prepareForSegue(segue, sender: but)

但这不能打开MDComDBCatsTVC..。如何编程,因为我无法从故事板中的按钮中拖动,因为我的按钮是以编程方式添加的

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-06-02 13:40:45

您可以使用这样的动态弹出视图。

代码语言:javascript
复制
 let vc = storyboard.instantiateViewControllerWithIdentifier("myPopupView") as! myPopupViewViewController

 self.presentViewController(vc, animated: true, completion: nil)
票数 2
EN

Stack Overflow用户

发布于 2015-06-02 16:58:40

我无法从故事板中的按钮中拖动,因为我的按钮是通过编程添加的

通过从视图控制器图标拖动到目标视图控制器,可以在情节提要中创建segue。然后,可以以编程方式使用此segue。

单击segue在“属性检查器”面板中分配标识符。然后,可以使用此标识符以编程方式访问segue。

Xcode会坚持说popover有一个锚。错误信息是“没有锚的Popover segue”。这可以在属性检查器中解析-- Anchor属性。从圆圈拖动到您的视图。

在以编程方式创建的按钮的操作中,您将能够使用例如:

代码语言:javascript
复制
func buttonAction(sender:UIButton!)
{
    performSegueWithIdentifier("popoversegue", sender: self)
}

( ...或者更有可能是使用if let等更健壮的东西)

票数 6
EN

Stack Overflow用户

发布于 2015-06-02 13:45:13

如果您想通过情节提要连接您在情节提要中的视图控制器与segue (从第一个视图控制器拖动到第二个视图控制器,并不意味着只从按钮拖动)名称segue "oc“,然后在按钮操作中执行segue,如下所示

代码语言:javascript
复制
performSegueWithIdentifier("oc", sender: but)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30597204

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档