iOS 中 UI 元素的边距和内边距
Posted
技术标签:
【中文标题】iOS 中 UI 元素的边距和内边距【英文标题】:Margin and padding for UI elements in iOS 【发布时间】:2011-08-18 17:25:17 【问题描述】:到目前为止,我已经为 android 开发过。在那里,您可以为几乎每个 UI 元素设置 layoutMargin 和 padding(当您在 xml 文件中描述 UI 时)。
这在 ios 中的 UIViews 代码中是如何完成的(如果有通用命令)?
Tnx
【问题讨论】:
此问题应标记为 iphone 问题而不是 android 问题 我投票决定将此问题作为离题结束,因为太旧而无法迁移。这篇帖子是2011年的,现在是2015年了。iOS SDK变了。 【参考方案1】:iOS 采用不同的方法来放置控件 - 没有布局引擎,您为所有控件指定绝对坐标和大小。有点像 Android 中的 AbsoluteLayout
。
所以边距和填充的概念并不真正适用 - 相邻控件之间的间隙完全取决于您,它们不是由系统计算的。尺寸相同。
这使得实现“使该控件尽可能大到其文本所需的大小”的场景变得更加困难。但是,您不会遇到恶意换行。
编辑:AbsoluteLayout
这些天已被弃用。
【讨论】:
【参考方案2】:在 ios 中,您可以使用 Interface Builder 进行设计。您仍然可以使用 xml,但没有人使用它。
【讨论】:
【参考方案3】:您可以在代码中或使用 Interface Builder(或 Xcode 4 中的 .xib 编辑器)来布置 UI 元素。您将为视图指定实际坐标,但您也可以为每个视图指定调整大小的行为。所以,你可以说一个特定的视图应该始终保持相同的大小并保持水平居中,或者它应该保持它的大小并保持左侧的边距,或者它应该拉伸以保持左右边距等。在 IB 中查找“autosizing”部分,或在代码中设置任意视图的autoresizingMask
属性。
【讨论】:
对于理解差异也很有帮助。以上是关于iOS 中 UI 元素的边距和内边距的主要内容,如果未能解决你的问题,请参考以下文章