【问题标题】:Using Auto Layout in XCode to make the entire view scale depending on the size在 XCode 中使用 Auto Layout 使整个视图根据大小进行缩放
【发布时间】:2017-01-20 04:55:24
【问题描述】:

我觉得应该有一个简单的解决方案,我不想做任何非常复杂的调整大小,但一直在努力理解自动布局的基础知识。我的应用程序无法旋转,所以这不是问题。我只是希望我的应用程序可以缩放到屏幕大小。我在 iPhone 7 屏幕上构建它,但如果我使用 7 plus,它应该会大一点。据我所知,它们的屏幕比例相同,所以我觉得这应该不是那么困难的任务。

非常感谢任何帮助!

【问题讨论】:

  • 是的,您的应用程序应该可以在任何屏幕上运行。
  • 是的,我只是不确定要添加什么。我不需要任何复杂的东西,屏幕不会旋转。我只希望每件事都能扩展。好像我把它截屏并增加尺寸一样,一切都会变大。我希望它在任何屏幕上看起来都相对完全相同。
  • 这里没有问题。只需使用自动布局;请注意,应用程序不会随着所有内容的变大或变小而“缩放”,而是会适应显示尺寸的变化。但是,如果您在限制方面遇到特定问题或错误,请发布该问题,并附上问题的详细信息、当前结果和预期结果。

标签: ios swift xcode autolayout autoresize


【解决方案1】:

使用约束 子视图和父视图之间的顶部、左侧、底部和右侧应为 0。 不要设置元素的宽度/高度,除非它不应该改变。

【讨论】:

  • 我在大多数控制器上只有一个主视图,它不是一个非常复杂的应用程序。
  • 你在使用故事板吗?
【解决方案2】:

“我是在 iPhone 7 屏幕上构建的,但如果我使用 7 plus,它应该会大一点。”

如果您使用较小的屏幕怎么办?你只为 iphone 7 制作这个应用程序吗?那么你的应用就会被拒绝。

您无法让所有内容都根据其使用的屏幕比例自动“变大”。

您需要为每个视图和子视图配置约束,以使事物按比例“变大”或“变小”。

如果您有标签问题是多大,什么字体大小。等等 如果你有图像,问题是多大,什么 contentmode ,缩放?方面适合?填充模式?等等 如果您有 tableviews/collectionviews,那么您需要通过使用 autolayout 对其进行子类化来配置每个单元格的布局,并配置委托方法以返回与屏幕大小成比例的单元格大小等。

所以,我的建议基本上是,玩转自动布局,然后测试、失败、测试、失败、阅读、阅读、阅读、测试、失败,直到你掌握所有内容。

查看 youtube,那里有很多不错的剪辑和教程。最重要的是要有耐心!!

编辑: 如果您有一个“简单”的应用程序,请使用您绘制的屏幕截图或示例来更新您的问题,以显示您想要实现的目标。也许我们可以帮助您实现它。但您的问题太宽泛,目前无法回答。

【讨论】:

  • 是的,我想我可能只需要完全学习自动布局。我只是觉得我想要的很简单。如果它是一个较小的屏幕,它只会调整为更小!我想,既然所有东西都会以相同的比例调整大小,这很容易做到。
  • @PhilipVasseur 我强烈建议你查看 Youtube 剪辑,不要从你的学习曲线开始就尝试“阅读”这么多,看事情会更容易完成。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-12-30
  • 2017-02-13
  • 2012-10-21
  • 2019-06-05
  • 2018-01-13
  • 1970-01-01
  • 2011-03-17
相关资源
最近更新 更多