我看到很多代码解释了如何在视图中居中子视图。代码示例通常如下所示:
SubView.center = view.center;
有人可以向我解释这是如何工作的吗?我只是不明白。
给出视图的view.center
中心点。例如宽度为 100,高度为 100,它将返回 (50,50)。我得到它。
设置subview.center
对我来说很奇怪。 subview.center
将返回子视图的中心点。不知何故,将其设置为 (50,50) 会将其父视图中的子视图定位到 50/50 的坐标。但是如果子视图本身的宽度为 50,高度为 50,则访问此属性将返回(25,25)。
不懂我的意思?这里的概念对我来说很奇怪,因为 setter 和 getter 执行不同的功能。
如果有人可以解释这一点,请做。或者,如果我离基地很远,我也想知道。我是 iOS 开发新手。
如果我是正确的并且这确实是它的工作方式,你会不会认为这是一种反模式。当然,在 .NET 中,类似这样的东西将是一种反模式。也许不适合 Obj-C?