如何在UIPageViewController中更改页面指示器的背景颜色

时间:2015-10-11 16:22:55

标签: ios iphone swift uiview

我在storyboard中使用UIPageViewController,并编写一个继承自UIPageViewController的类。

完成代码后,我发现页面指示器的背景颜色为黑色,我不知道如何更改。

enter image description here

我搜索互联网,发现很多人会使用UIViewController + UIPageControl来做自定义页面指示。

是否可以在UIPageViewController中更改背景颜色?

谢谢!

2 个答案:

答案 0 :(得分:0)

添加:

let pageControl = UIPageControl.init(frame: CGRectMake(0, UIScreen.mainScreen().bounds.size.height*14/15, UIScreen.mainScreen().bounds.size.width, UIScreen.mainScreen().bounds.size.height))
pageControl.backgroundColor = UIColor.init(red: 0, green: 147/255, blue: 229/255, alpha: 1)
view.addSubview(pageControl)

我已成功改变颜色。

但我还有另外一个问题。

虽然我已将imageView设置为填满整个屏幕,但页面控件将覆盖图像的按钮,我怎样才能避免页面控制覆盖图像,只显示点?

答案 1 :(得分:0)

我挣扎了两个多小时。这就是我在Swift 4中所做的事情

    override func viewDidLayoutSubviews() {
    super.viewDidLayoutSubviews()
    for view in self.view.subviews{
        if view is UIPageControl{
            (view as! UIPageControl).currentPageIndicatorTintColor = .yellow
            }
        }
    }

在此块中拥有UIPageControl后,您应该能够自定义其指示器颜色