• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

iOS 7 - 自动布局 - 如何在旋转时更改 View 的位置

[复制链接]
菜鸟教程小白 发表于 2022-12-12 23:12:35 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

Portrait Landscape left and right

在这种情况下,我对使用自动布局处理 UI 旋转有点困惑。这些按钮不会改变大小或与边缘的距离,而是它们相对于彼此的位置。

如何让这些 View 旋转和布局,如图所示?此外,纵向 View 为 300 x 300。但是,当旋转为横向时,必须将其大小调整为 300 x 290 以适应状态栏下方。

我真的很想知道执行此操作的最佳方法,以及执行此操作的不同方法。我已经看到了一些可能的方法,例如在设备旋转时以编程方式创建新约束,以及根据设备旋转方向加载两个单独的 NIB。

感谢您的帮助!



Best Answer-推荐答案


好的,有几种方法。

第一种方法:巧妙地使用自动布局

所以您知道正方形的宽度以及它会粘在左侧和顶部。所以设置你的自动布局,它设置左边和顶部的偏移量和宽度和高度。按钮从底部固定 y 像素,从右侧固定 x 像素,并且具有固定的宽度和高度。这些约束总是可以得到满足的。

这适用于 iPad 或 iPhone 等单一习语。

要获得 290 而不是 300,您还需要在底部设置一个偏移量,即 > 10,优先级为 1000,而 <=300 的高度优先级为 750,高度 >= 250 (或任何你喜欢的)再次具有 1000 的优先级。我应该在真实的 Storyboard中进行测试以正确测试,这不是最简单的设置,没有警告或问题。

我最终设置了很多带有优先级的软尺寸。例如,290 像素高度的优先级仅为 250。

Set up

第二种方法:灵活的尺寸布局

下一个方法是针对已经在 Xcode 6 中的新的、无限大小的惯用语。显然这是 future ,我建议您的应用程序适应它。您将不得不告诉我更多关于您的应用程序以及您希望它如何扩展的信息,因为不再有真正的大小概念,只是知道最宽和最窄的部分在哪里。

关于iOS 7 - 自动布局 - 如何在旋转时更改 View 的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24394092/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap