gpt4 book ai didi

ios - UIView 在旋转时重新排列

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:19:59 24 4
gpt4 key购买 nike

我正在为项目使用 Storyboard。我有一个带有 3 个按钮的顶部菜单(UIView 中有 3 个 UIButton),它们之间的距离相同。

我想在旋转时将此菜单拉伸(stretch)到最大宽度并增加按钮之间的距离。

我做了以下事情:

- (void) didRotateFromInterfaceOrientation:(UIInterfaceOrientation)orientation {
[super didRotateFromInterfaceOrientation:orientation];
UIDeviceOrientation deviceOrientation = [UIDevice currentDevice].orientation;
if (UIDeviceOrientationIsLandscape(deviceOrientation)){
[self prepareLandscapeLayout];
}
}

- (void) prepareLandscapeLayout {
[[self topMenu] setFrame:CGRectMake(0, 0, IS_IPHONE_5 ? 568 : 480, 59)];
[[self cameraButton] setCenter:CGPointMake(232, 26)];
[[self settingsButton] setCenter:CGPointMake(288, 26)];
[[self videoList] setCenter:CGPointMake(340, 26)];
}

旋转后调用了 prepareLandscapeLayout 函数,但按钮仍保留在其原始位置。我还可以看到 topMenu 在旋转后如何拉伸(stretch)(我已经更改了背景颜色)。

关于我可能做错了什么有什么想法吗?

最佳答案

只要您不想使用 Storyboard 设计进行旋转和约束,您就应该停止使用“Autolayout”

请参阅 Storyboard右 Pane 中任何 Controller 中的Interface Builder Document

关于ios - UIView 在旋转时重新排列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20080658/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com