[swift]UITextView 从 UIStackView 中缺少的代码添加

标签: UITextView ios Swift
发布时间: 2016/5/7 20:11:12
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我想添加 UITextViewUIStackView 以编程的方式,但它并不出现在屏幕上。

当调试视图层次结构中,请它位于视图层次结构中,它有一些限制,但不显示在输出视图。

这是我的代码 ︰

let stackView = UIStackView()

let textView = UITextView()
let button = UIButton()

stackView.axis = .Horizontal
stackView.spacing = 20
stackView.distribution = UIStackViewDistribution.Fill

button.setImage(UIImage(named:"image1"), forState: .Normal)
button.setImage(UIImage(named:"image2"), forState: .Selected)


textView.textAlignment = NSTextAlignment.Left
textView.textColor = UIColor.blackColor()
textView.editable = true
textView.text = ""

stackView.addArrangedSubview(textView)
stackView.addArrangedSubview(button)

好的添加按钮。但我找不到的方式来正确地显示 TextView !试图添加宽度/高度约束喜欢下面,但它并不像,或工作严重 (取决于变量) ︰

let widthConstraint = NSLayoutConstraint(item: textView,
                 attribute: NSLayoutAttribute.Width,
                 relatedBy: NSLayoutRelation.Equal,
                 toItem: stackView,
                 attribute: NSLayoutAttribute.Width,
                 multiplier: 1,
                 constant: 0)
stackView.addConstraint(widthConstraint)
let heightConstraint = NSLayoutConstraint(item: textView, attribute:   NSLayoutAttribute.Height, relatedBy: NSLayoutRelation.Equal, toItem: stackView, attribute: NSLayoutAttribute.Height, multiplier: 1, constant: 0)
stackView.addConstraint(heightConstraint)

然而,当补充说 UITextField ,不 UITextView ,然后它做工精细不受任何限制。

解决方法 1:

我明白了什么是失踪。我不能使用指定的初始值设定项,因为我不知道文本视图类中的帧大小创建它。

但是,这帮助-之后 stackView.distribution 上面的代码中加入这一行 ︰

 self.alignment = UIStackViewAlignment.Fill
官方微信
官方QQ群
31647020