滑出Safari View Controller

时间:2016-03-08 13:07:32

标签: ios swift sfsafariviewcontroller

在我的表格视图中选择了一行时,我正在呈现Safari视图控制器。完成Safari视图控制器后,按完成按钮,它返回到我的表视图。当我向右滑动以关闭Safari视图控制器时,我遇到了问题。如果我滑动以解除而不是按下完成,我仍然可以滚动我的表视图并重新加载它,但我无法选择一行。我的理解是,如果Safari视图控制器仍然存在,则在第一个视图控制器真正消失之前无法呈现。似乎这可能是导致问题的原因。如何使滑动解除Safari视图控制器实际上摆脱所提供的控制器?

    func safariViewControllerDidFinish(controller: SFSafariViewController) {
            controller.dismissViewControllerAnimated(true, completion: nil)
        }

    override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
            var linkString = posts.objectAtIndex(indexPath.row).valueForKey("link") as? String
            linkString = linkString!.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLQueryAllowedCharacterSet())
            linkString = linkString?.stringByReplacingOccurrencesOfString("%09%09", withString:"")
            let url = NSURL(string: linkString!)
            let safariVC = SFSafariViewController(URL: url!, entersReaderIfAvailable: true)
            safariVC.delegate = self
            let kfbBlue = UIColor(red: 8.0 / 255.0, green: 77.0 / 255.0, blue: 139.0 / 255.0, alpha: 1.0)
            safariVC.view.tintColor = kfbBlue
            self.presentViewController(safariVC, animated: true, completion: nil)
        }

0 个答案:

没有答案