UIPageVIEwController的代理和数据源方法似乎没有提供任何访问权限,在内部我假设UIPageVIEwController必须在某处使用滚动视图,但它似乎没有直接子类化,所以我不是能打电话
func scrollVIEwDIDScroll(scrollVIEw: UIScrollVIEw) {}
我已经看到一些其他帖子的建议,以获取对pageVIEwController!.vIEw.subvIEws的引用,然后第一个索引是一个scrollVIEw,但这似乎非常黑客.我想知道是否有更标准的方法来处理这个问题.
解决方法 您可以在UIPageVIEwController内搜索UIScrollVIEw.为此,您必须实现uiscrollviewdelegate.之后你可以得到你的scrollVIEw:
for v in pageVIEwController.vIEw.subvIEws{ if v.isKindOfClass(UIScrollVIEw){ (v as UIScrollVIEw).delegate = self }}
之后,您可以使用所有的uiscrollviewdelegate方法,因此您可以覆盖scrollVIEwDIDScroll方法,您可以在其中获取scrollposition:
func scrollVIEwDIDScroll(scrollVIEw: UIScrollVIEw) { //your Code}
或者如果你想要一个单行:
let scrollVIEw = vIEw.subvIEws.filter { is UIScrollVIEw }.first as! UIScrollVIEwscrollVIEw.delegate = self总结
以上是内存溢出为你收集整理的ios – 获取UIPageViewController的滚动位置全部内容,希望文章能够帮你解决ios – 获取UIPageViewController的滚动位置所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)