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

iOS 9.2.1 Xcode 7.2.1 UIPageControl dots are drawn on top of each other

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

以及"Debug View Hierarchy"的输出截图:

问题出在 UIViewExtension 中,事实证明您不应该扩展 "origin":

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