当我们将子视图从一个视图移动到另一个视图时,子视图的框架会发生什么?

时间:2012-11-08 09:08:05

标签: objective-c ios xcode interface-builder

我注意到了两件不同的事情。

当我通过程序执行此操作时,子视图的框架不会更改。

当我在界面构建器中执行此操作时,子视图的框架全部位于中间。

这适用于iOS。我不确定MaCos。

我不确定所有这些都记录在哪里。 autoresize mask如何影响这一点。

2 个答案:

答案 0 :(得分:0)

我认为当我们通过代码将子视图从一个视图移动到另一个视图时,子视图的框架保持与它与前一个父视图对齐的相同坐标,意味着子视图的x坐标是否在10像素的距离从父的x坐标开始,这个子视图将与新父视图相距10个像素,y坐标也会出现相同的情况,但在界面构建器中,子视图将其中心与父视图的s =中心对齐。

答案 1 :(得分:0)

您需要设置模拟器屏幕上显示的视图。我的意思是,例如,如果您的应用程序使用状态栏启动,则在添加子视图之前,首选将状态栏置于根视图中。除此之外,您的视图的“剪辑边界”和“自动调整大小子视图”属性正在发挥重要作用。这些属性可能会遇到您遇到的问题。