关键词:
【中文标题】从 UIStackView 中缺少的代码添加的 UITextView【英文标题】:UITextView added from code missing in UIStackView 【发布时间】:2015-11-03 11:04:18 【问题描述】:我正在尝试以编程方式将UITextView
添加到UIStackView
,但它没有出现在屏幕上。
当我签入 Debug View Hierarchy 时,它位于视图层次结构中,并且有一些约束,但不会显示在输出的视图中。
这是我的代码:
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
时,它可以正常工作,没有任何限制。
【问题讨论】:
您是否尝试将 textView 的背景颜色设置为白色?通常背景颜色设置为clearColor。 是的。不幸的是,背景不是问题。请参阅下面的解决方案 【参考方案1】:UITextView
是UIScrollView
的子类,因此它的大小在UIStackVIew
内部是不明确的。为了使大小明确,您可以根据其内容调整自身大小 - 即,使其不可滚动。
那么简单的解决方案是:
textView.isScrollEnabled = false
(Swift 3.0 语法)
【讨论】:
【参考方案2】:我知道缺少什么。我不能使用指定的初始值设定项,因为我不知道要在其中创建它的类中文本视图的帧大小。
但这有帮助 - 在上面的代码中的 stackView.distribution 之后添加这一行:
self.alignment = UIStackViewAlignment.Fill
【讨论】:
【参考方案3】:尝试使用
init(frame frame: CGRect,textContainer textContainer: NSTextContainer?)
因为它是 UITextView 的指定初始化程序。
【讨论】:
如何以编程方式将笔尖添加到 UIStackView
】如何以编程方式将笔尖添加到UIStackView【英文标题】:HowtoaddnibstoaUIStackViewprogrammatically【发布时间】:2018-07-2812:29:23【问题描述】:我正在尝试将任意数量的视图从笔尖添加到UIStackView中。问题是,比如说,如果只包含一个视... 查看详情
以编程方式清空 UIStackView
】以编程方式清空UIStackView【英文标题】:ProgrammaticallyemptyingUIStackView【发布时间】:2021-06-2307:41:44【问题描述】:我有一个相当简单的代码,在单击按钮时,将随机颜色的UIView添加到UIStackView,并在单击不同的按钮时,从UIStackVi... 查看详情
从 UIStackView 获取 View 的索引
】从UIStackView获取View的索引【英文标题】:GetView\'sindexfromUIStackView【发布时间】:2018-09-1915:50:28【问题描述】:我在stackview中添加了2个不同大小的视图。现在,当我单击任何视图的加号按钮时,我只想在其正下方添加一个视图... 查看详情
以编程方式未添加到 UIStackView 的元素?
】以编程方式未添加到UIStackView的元素?【英文标题】:ElementsnotaddingtoUIStackView,programmatically?【发布时间】:2021-02-1608:50:32【问题描述】:我试图在LivePlayground中创建一个排序可视化工具,所以我创建了一个堆栈视图,但是当我... 查看详情
如何在 UIScrollView 中添加 UIStackView
】如何在UIScrollView中添加UIStackView【英文标题】:HowtoaddUIStackViewinsideanUIScrollView【发布时间】:2016-04-1121:38:09【问题描述】:我有一个UIScrollView,它有一个UIStackView,里面有三个对象(标签、图像和标签)如何让滚动视图与堆栈... 查看详情
如何在 UIStackview 中添加和删除 UILabel
】如何在UIStackview中添加和删除UILabel【英文标题】:HowtoaddandremoveUILabelsinUIStackview【发布时间】:2019-07-2811:35:01【问题描述】:我想在UIStackview中添加和删除UILabel。添加的UILabel的数量将取决于字符串的长度(例如,如果字符串是... 查看详情
以编程方式在 UIStackView 中添加视图
】以编程方式在UIStackView中添加视图【英文标题】:AddviewsinUIStackViewprogrammatically【发布时间】:2015-08-2400:52:04【问题描述】:我正在尝试。现在我的代码是:UIView*view1=[[UIViewalloc]init];view1.backgroundColor=[UIColorblackColor];[view1setFrame:CGR... 查看详情
以编程方式将一堆自定义视图从 XIB 添加到 UIStackView
】以编程方式将一堆自定义视图从XIB添加到UIStackView【英文标题】:programmaticallyaddabunchofcustomviewfromXIBtoUIStackView【发布时间】:2015-11-0118:01:18【问题描述】:我有一个TagDisplayCell.xib和关联的TagDisplayCell.m。在.m文件中,我像这样加... 查看详情
无法从“UIStackView”中删除轴动画
】无法从“UIStackView”中删除轴动画【英文标题】:Unabletoremoveaxisanimationfrom`UIStackView`【发布时间】:2017-04-0207:11:18【问题描述】:我有一个UIStackView内置界面构建器,当它的超级视图从纵向旋转到横向时,它会将其axis属性从verti... 查看详情
UIStackView:添加相同宽度的排列视图
】UIStackView:添加相同宽度的排列视图【英文标题】:UIStackView:addarrangedviewswiththesamewidth【发布时间】:2017-06-0912:05:02【问题描述】:我有UIStackView并想在这个视图中添加一些排列的视图......有时是一个,有时是两个,三个......等... 查看详情
如何通过代码在方向更改时添加对 UIStackView.Axis 的更改?
】如何通过代码在方向更改时添加对UIStackView.Axis的更改?【英文标题】:HowdoIbycodeaddachangetoUIStackView.Axisonorientationchange?【发布时间】:2015-09-1712:59:06【问题描述】:我有几个UIStackView,我以编程方式添加,我希望他们有另一个Axi... 查看详情
UIStackView - 排列的视图重叠
】UIStackView-排列的视图重叠【英文标题】:UIStackView-arrangedviewsareoverlapping【发布时间】:2020-04-2904:09:10【问题描述】:过去几个小时我一直在努力将自定义视图添加到UIStackView。StackView放置在UIScrollView内,并为ScrollView的每个边距... 查看详情
UIStackView 未按预期显示
】UIStackView未按预期显示【英文标题】:UIStackViewnotshowingasexpected【发布时间】:2018-10-1307:45:49【问题描述】:我想在我的应用中添加一个UIStackView的登录按钮,所以我添加了以下代码:overridefuncviewDidLayoutSubviews()super.viewDidLayoutSubv... 查看详情
子视图的 UIStackView 不滚动
】子视图的UIStackView不滚动【英文标题】:UIStackViewofsubviewsnotScrolling【发布时间】:2016-08-2422:25:16【问题描述】:我有一个UIScrollView,我在其中添加了一个UIStackView的子视图。子视图不可滚动,但如果我添加按钮而不是UIView,则... 查看详情
如何从一个表中添加另一个表中缺少的记录:MS Access
】如何从一个表中添加另一个表中缺少的记录:MSAccess【英文标题】:HowdoIaddrecordsfromonetablemissinginanothertable:MSAccess【发布时间】:2013-11-0706:11:45【问题描述】:好的,这应该很容易。例如,我有一个表(表1)填充了以下记录:Ac... 查看详情
如何添加具有特定边界的空白 UIImageView 作为 UIStackView 的子项?
】如何添加具有特定边界的空白UIImageView作为UIStackView的子项?【英文标题】:HowtoaddblankUIImageViewwithcertainboundsasachildofUIStackView?【发布时间】:2016-08-0904:07:53【问题描述】:谁能告诉我在UIStackView中添加具有特定高度的空白UIImageVi... 查看详情
UIStackView 中的图像未四舍五入
】UIStackView中的图像未四舍五入【英文标题】:ImagesnotbeingroundedinUIStackView【发布时间】:2018-09-1313:14:37【问题描述】:我正在尝试对几张图像进行四舍五入并将它们添加到堆栈视图中,但由于某种原因它无法正常工作。基本上,... 查看详情
将layoutmargins添加到uistackview中的一个元素(代码片段)
我想创建一个包含3个元素的垂直堆栈视图。我想在第二个和最后一个元素之间留出更多的空间。所以我想添加到最后一个元素:mylastelement.layoutMargins=UIEdgeInsets(top:30,left:0,bottom:0,right:0)但layoutmargins不适用于我的stackview。有没有简... 查看详情