我有一个容器scrollView
,里面包含一个常规的集合视图和集合视图单元格(里面有几个自定义视图,它们不是集合视图单元格,因此为什么我有一个容器滚动查看而不仅仅是集合视图。)
当用户点击一个单元格时,我会以编程方式实例化并呈现一个视图控制器:
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let secondVC = storyboard.instantiateViewControllerWithIdentifier("second") as! SecondViewController
self.presentViewController(secondVC, animated: false, completion: nil)
这很有效。现在,我希望在某个内容偏移处转换回原始视图控制器。所以我在第二个视图控制器中有一个方法来执行此转换:
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let firstVC = storyboard.instantiateViewControllerWithIdentifier("first") as! FirstViewController
// There's an IBOutlet for my containerScrollView
firstVC.containerScrollView.setContentOffset(CGPoint(x: 500, y: 0), animated: false)
self.presentViewController(firstVC, animated: false, completion: nil)
转换回firstVC
的效果很好,但它总是从firstVC
的容器滚动视图的开头开始,而不是我为自定义内容偏移设置的。在我尝试设置内容偏移之前,我已经检查以确保containerScrollView
上的firstVC
属性存在,并且它确实存在。有没有办法做到这一点?