【发布时间】:2017-05-06 07:49:58
【问题描述】:
我正在动态创建一个 scrollView 并有一个与之关联的页面控件。我有一个按钮数组,这些按钮被动态添加到滚动视图中。虽然在第一页中添加的按钮是可见的,但有些按钮不可见,但它们正在添加到滚动视图中。
UIScrollView frame = CGRect(x: 0, y: 0, width: 340, height: 150) scrollView.contentSize = CGSize(width: scrollView.frame.size.width * CGFloat(page), height: scrollView.frame.size.height)
就我而言,我有 2 页,因此内容宽度为 680。 在滚动视图时,滚动视图的内容偏移量为 340,虽然不可见的按钮在 contentSize 内,但按钮仍然不可见,
以下是不可见的按钮框架,
<UIButton: 0x7ffdf0f26bb0; frame = (355 10; 62 32); opaque = NO; layer = <CALayer: 0x610000030840>>,
<UIButton: 0x7ffdf0f27110; frame = (427 10; 98 32); opaque = NO; layer = <CALayer: 0x610000030960>>,
<UIButton: 0x7ffdf0f27670; frame = (535 10; 112 32); opaque = NO; layer = <CALayer: 0x610000030a80>>
就页面控件而言,即使我删除了页面控件,我也会在滚动视图中看到相同的行为。 我不确定是否必须检查滚动视图上的任何特定内容。
@IBAction func changePage(sender: UIPageControl) -> () {
let x = CGFloat(pageControl.currentPage + 1) * scrollView.frame.size.width
scrollView.setContentOffset(CGPoint(x: x,y :scrollView.frame.size.height), animated: true)
}
func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
let pageNumber = round(scrollView.contentOffset.x / scrollView.frame.size.width)
pageControl.currentPage = Int(pageNumber)
}
【问题讨论】:
标签: uiscrollview swift3 uipagecontrol