【问题标题】:What is the equivalent of Android's weightsum in iOSiOS中Android的weightsum相当于多少
【发布时间】:2015-07-02 07:08:24
【问题描述】:

我有一堆 UIButton,我希望它们平均分布在屏幕上的屏幕大小。不使用 AutoLayout 是否可以实现?我的视图非常适合 640*960 的屏幕,好像它比底部有空白空间更大。那么iOS中是否有任何等价的weightsum? 我附上了两张图片,显示了视图在 640*960 (第二张图片) 和 640*1136 (第一张图片) 屏幕上的外观。

【问题讨论】:

    标签: ios uibutton android-layout-weight ios-autolayout


    【解决方案1】:

    我建议您为这种行为选择自动布局。在您的情况下,在 IB 中可以轻松设置非常简单的约束。如果您更喜欢从代码中设置它,请使用我们的视觉语言。

    还有,但对我来说,这有点矫枉过正,你可以使用 UICollectionView

    【讨论】:

    • UICollectionView 是个好主意。谢谢。我会尝试并更新。
    • @ManjuBasha,你成功了吗?
    • 是的。当涉及到 640*960 屏幕时,它变得可滚动。按钮没有得到调整大小。我的意思是它们不完全适合屏幕
    • @ManjuBasha,是的,确实如此。您需要自行调整按钮大小以适应屏幕大小。在委托方法- collectionView:layout:sizeForItemAtIndexPath: 中,您可以使用collectionView.bounds.size 来了解布局发生在哪个区域。
    • 问题是我的整个应用程序已经在没有自动布局/布局约束的情况下构建。我无法为我的故事板中的一个视图控制器启用自动布局。这就是为什么我尽量不使用自动布局/布局约束
    【解决方案2】:

    您可以使用新的UIStackView,它可以让您轻松布置视图,而无需担心自动布局(它确实在内部使用)。

    Xcode 7 中的Interface Builder 有一个有用的嵌入堆栈视图选项,应该可以很容易地做到这一点。

    【讨论】:

    • UIStackView 在 iOS 9.0 中可用,现在是 beta 版本。在生产代码中使用它不是最好的主意
    猜你喜欢
    • 1970-01-01
    • 2011-04-04
    • 1970-01-01
    • 2015-06-06
    • 2020-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多