如何在iOS中创建一个按钮列表,在每个iPhone中都能正确显示

时间:2017-10-10 10:55:06

标签: ios iphone xcode ios11

我是全新的, 我想创建一个按钮列表,我需要连续三个按钮 它适用于大屏幕iPhone,但在较小的iPhone中,它看起来像下面的图像,(其中一个按钮的一半会隐藏) 每个按钮的高度为100,宽度为100

how buttons look like in small devices

我尝试使用自动调整大小但没有发生任何差异。我也改变了我的class X(ioWidth: Int) extends Module { val io = IO( new Bundle { val in0 = Input(UInt(ioWidth.W)) ... }) val reg = Reg(UInt((ioWidth * 2).W)) // using width parameter here. ... } ,但结果仍然和以前一样。

viewDidLoad

感谢任何帮助。

3 个答案:

答案 0 :(得分:2)

以下是使用堆栈视图和代码enter image description here

的步骤

enter image description here

enter image description here

enter image description here

enter image description here

您的代码应如下所示 -

@IBOutlet weak var stackViewNew: UIStackView!

override func viewDidLoad() {
super.viewDidLoad()

stackViewNew.distribution = .equalSpacing

var value : CGFloat!

value = (((self.view.frame.size.width) - 300.0)/2)-10  // Adjust Spacing according to screen size
if(value == 0)
{
    value = 5             //If spacing comes to be zero then minimum spacing set
}
stackViewNew.spacing = value

}

如有任何其他疑问,请在下面发表评论。

希望它有所帮助。

答案 1 :(得分:1)

查看自动布局和约束,例如here

答案 2 :(得分:1)

您可以使用自动布局来处理它,只需为这些按钮本身添加比率约束,然后为每个按钮添加相等的宽度约束,同时为所有按钮添加前导和尾随约束