Since List
看起来目前无法配置删除行分隔符,我正在使用ScrollView
with a VStack
在其中创建文本元素的垂直布局。下面的例子:
ScrollView {
VStack {
// ...
Text("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer mattis ullamcorper tortor, nec finibus sapien imperdiet non. Duis tristique eros eget ex consectetur laoreet.")
.lineLimit(0)
}.frame(width: UIScreen.main.bounds.width)
}
所结果的Text
呈现的内容被截断为单行。外面一个ScrollView
它呈现为多行。我将如何在一个ScrollView
除了明确设置高度之外Text
frame ?
In Xcode 11 通用版:
For any Text
嵌套在滚动视图中的堆栈中的视图,使用.fixedSize(horizontal: false, vertical: true)
解决方法:
ScrollView {
VStack {
Text(someString)
.fixedSize(horizontal: false, vertical: true)
}
}
如果有多个多行文本,这也适用:
ScrollView {
VStack {
Text(someString)
.fixedSize(horizontal: false, vertical: true)
Text(anotherLongString)
.fixedSize(horizontal: false, vertical: true)
}
}
如果堆栈的内容是动态的,则可以使用相同的解决方案:
ScrollView {
VStack {
// Place a single empty / "" at the top of your stack.
// It will consume no vertical space.
Text("")
.fixedSize(horizontal: false, vertical: true)
ForEach(someArray) { someString in
Text(someString)
.fixedSize(horizontal: false, vertical: true)
}
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)