如何解决.lineLimit在Mac菜单栏上不起作用-SwiftUI
对于Mac菜单栏应用程序,我具有此视图,该视图会产生以下图像。
Person
我想这样做,因此包含item.description的文本可以使用VStack {
Text("Title of App").font(.title).frame(alignment: .center)
List(results,id: \.title) { item in
VStack(alignment: .leading) {
Text(item.title)
.font(.headline)
Text(item.description)
}
}
进行多行处理,但是当我将其应用于元素时,它仍然完全相同。我还尝试先在item.description上使用lineLimit
,然后在它所属的VStack上使用它,产生以下结果。
我正在使用XCode版本11.6运行MacOS .fixedSize(horizontal: false,vertical: true)
解决方法
这是一个解决方案(已通过Xcode 11.4 / macOS 10.15.6测试)
VStack {
Text("Title of App").font(.title).frame(alignment: .center)
// use geometry reader to fix list content width
GeometryReader { gp in
List(results,id: \.title) { item in
VStack(alignment: .leading) {
Text(item.title)
.font(.headline)
Text(item.description)
}
.frame(width: gp.size.width) // << here !!
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。