如何在Swift中更改页面视图点位置?

时间:2016-01-05 10:42:39

标签: ios swift uipageviewcontroller

我搜索了这个,但找不到任何有用的解决方案。如何通过Y更改页面视点位置?

现在我将它们放在ViewController的底部。怎么能让他们从底部+200?

我在这里设置了点:

private func setupPageControl() {
    let appearance = UIPageControl.appearance()
    appearance.pageIndicatorTintColor = UIColor.grayColor()
    appearance.currentPageIndicatorTintColor = UIColor.whiteColor()
    appearance.backgroundColor = UIColor.darkGrayColor()
}

但是当我试图:

appearance.layer.position.y = 200

它没有意义。如果您需要,我的所有控制器代码都在这里:http://pastebin.com/1hLRFPsR

2 个答案:

答案 0 :(得分:4)

您需要引用UIPageControl实例。然后你基本上可以操纵pageControl的位置。请参阅此代码:

let pageControl = UIPageControl()
pageControl.pageIndicatorTintColor = UIColor.grayColor()
pageControl.currentPageIndicatorTintColor = UIColor.whiteColor()
pageControl.backgroundColor = UIColor.darkGrayColor()
pageControl.numberOfPages = 4
pageControl.center = self.view.center
self.view.addSubview(pageControl)

pageControl.layer.position.y = self.view.frame.height - 200; 
// 200 point from bottom of the screen

答案 1 :(得分:1)

如果您当前的y位置是:

appearance.layer.position.y

然后应用相对于它的修改:

appearance.layer.position.y = appearance.layer.position.y +/- yourOffset

但是你无法达到这种目的。 这里有更多说明https://stackoverflow.com/a/24933544/1585121 tl; dr UIPageViewController简化了他的UIPageControl,你无法理解其位置