首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >swift 3中的popover代码不起作用

swift 3中的popover代码不起作用
EN

Stack Overflow用户
提问于 2017-05-11 01:47:47
回答 1查看 641关注 0票数 0

我试图在swift 3中创建一个新的视图控制器,并将其显示为另一个视图控制器中的popover,我看过很多教程,但这段代码似乎不能在swift 3上运行。有人能帮上忙吗?它似乎在App委托文件中给了我一个错误。

代码语言:javascript
复制
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if segue.identifier == "popoverInfo" {

        let popoverVC = segue.destination
        popoverVC.modalPresentationStyle = UIModalPresentationStyle.popover
        popoverVC.popoverPresentationController!.delegate = self




    }




}

func adaptivePresentationStyleForPresentationController(controller: UIPresentationController) -> UIModalPresentationStyle {
    return UIModalPresentationStyle.none
}
EN

回答 1

Stack Overflow用户

发布于 2017-05-11 03:36:25

您可以实现如下的弹出效果:

代码语言:javascript
复制
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if segue.identifier == "popoverInfo" {

    segue.destination.modalPresentationStyle = .popover

    if let popover = segue.destination.popoverPresentationController {

        popover.delegate = self

        popover.sourceRect = // CGRect
        popover.sourceView = // UIView
        popover.permittedArrowDirections = .any
        popover.canOverlapSourceViewRect = // Bool
    }
}

然而,Popover在iPhone上的行为就像普通的模态一样。弹出窗口仅适用于iPad。(有一些方法可以破解它,但我不知道苹果是否会同意)

这段代码改编自我目前正在做的一个项目,如果它对你不起作用,让我知道,我可以再看一看。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43899479

复制
相关文章

相似问题

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