自动布局的问题
Problems with autolayout
我在使用自动布局时遇到问题。
我需要做的事情:
使用自动布局调整视图 (V1),然后在其中设置不同的视图 (V2)(带图表的自定义视图)。
问题:
当我在故事板中设置 V1 的宽度和高度时,它的框架是:0,0,600,300(大小 类 已打开),例如,在运行时 superview 的宽度是 320,但是当我尝试在运行时看到 V1 的框架,它的宽度仍然是 600。
我的问题:
是否存在找出 V1 的 "real" 帧的方法?它在运行时假定的宽度值?
首先,查找框架出现问题的原因是您在错误的时间要求框架,即过早。您必须等到 after 布局发生。
但是真实的答案是你想的完全错了。创建 V2 并使其成为 V1 的子视图,并使用约束 对其进行定位和调整大小 。在这里也使用自动布局!这样,无论什么发生在V1上,它相对于V1都是正确的。你永远不必知道V1的框架是什么! 这就是自动布局的意义所在!!不要破坏自动布局或尝试绕过它; 使用它!
我在使用自动布局时遇到问题。
我需要做的事情:
使用自动布局调整视图 (V1),然后在其中设置不同的视图 (V2)(带图表的自定义视图)。
问题:
当我在故事板中设置 V1 的宽度和高度时,它的框架是:0,0,600,300(大小 类 已打开),例如,在运行时 superview 的宽度是 320,但是当我尝试在运行时看到 V1 的框架,它的宽度仍然是 600。
我的问题:
是否存在找出 V1 的 "real" 帧的方法?它在运行时假定的宽度值?
首先,查找框架出现问题的原因是您在错误的时间要求框架,即过早。您必须等到 after 布局发生。
但是真实的答案是你想的完全错了。创建 V2 并使其成为 V1 的子视图,并使用约束 对其进行定位和调整大小 。在这里也使用自动布局!这样,无论什么发生在V1上,它相对于V1都是正确的。你永远不必知道V1的框架是什么! 这就是自动布局的意义所在!!不要破坏自动布局或尝试绕过它; 使用它!