我已经在界面构建器中创建了一个UIViewController并将一个UIPageControl放在根UIView的顶部,根UIView的背景色是橙色,UIPageControl具有默认配置,除了页面数设置为5(更改页面数会导致相同的输出)。没有与控制器关联的代码。 UIPageControl使用AutoLayout定位到根UIView的中心(我也尝试在不使用AutoLayout的代码中这样做,产生相同的结果)。
当我启动它时,在左上角只有一个点可见,打开“ Debug View Hierarchy”将显示所有点,但是每个点都在相同的x,y位置(x = 0,y = 0)绘制。
这是IB的屏幕截图:

ios - iOS 9.2.1 Xcode 7.2.1 UIPageControl点在彼此之上绘制-LMLPHP

以及“ Debug View Hierarchy”输出的屏幕截图:

ios - iOS 9.2.1 Xcode 7.2.1 UIPageControl点在彼此之上绘制-LMLPHP

最佳答案

问题出在UIViewExtension中,因为事实证明您不应该扩展“ origin”:

extension UIView {
  var origin: CGPoint {
    get {
      return frame.origin
    }
    set {
      frame.origin = origin
    }
  }
}

关于ios - iOS 9.2.1 Xcode 7.2.1 UIPageControl点在彼此之上绘制,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35738562/

10-12 14:43