2016-09-29 86 views
0

我目前正在Swift中创建一个iOS对象的应用程序列表。我正在使用UIStackView来组织这些对象,并且首先制作一个UIView容器,它将主要保存UILabels。我碰到一个令我困惑的问题,我希望有iOS经验的人可以解释为什么会发生这种情况。这里是我的简单的代码至今:普通UIView没有被添加到UIStackView

override func viewDidLoad() { 
    super.viewDidLoad() 

    for i in 0...5{ 
     //Make card in here 
     let DynamicView=UITextView(frame: CGRectMake(0, 0, 100, 100)) 
     DynamicView.backgroundColor=UIColor.greenColor() 
     DynamicView.layer.borderWidth=2 

     let lbl = UILabel() 
     lbl.text="Label " + String(i) 
     lbl.backgroundColor = UIColor.whiteColor() 
     lbl.layer.borderColor = UIColor.lightGrayColor().CGColor 
     lbl.layer.borderWidth = 2.0 
     stackView.addArrangedSubview(lbl) 
     //stackView.addArrangedSubview(DynamicView) 
    } 

在此,我加入6个标签的StackView,成功地运作: UILabels in UIStackView

您可以在注释的代码,我尝试添加看UIView的,其中,将它添加到UIStackView前,看起来是这样的:

UIView no add

当我把它添加到UIStackView(以及从早期注释掉标签),该地区在那里我禾ULD预计UIViews出现空白:

After add

我做得不对的代码? UIViews不能添加到UIStackViews?

回答

1

我想你还没有为Stack View设置top, leading, bottom and trailing约束条件。同时设置堆栈视图的分布以便平等填充。

+0

这样做,谢谢你帮助iOS的noob。 – DonutGaz