List 多行文本在SwiftUI列表内的NavigationLink中不起作用
List 多行文本在SwiftUI列表内的NavigationLink中不起作用,list,text,swiftui,List,Text,Swiftui,列表中的导航链接中的多行文本似乎不起作用 代码如下: struct ContentView : View { var body: some View { List(1...5) { _ in NavigationLink(destination: EmptyView()) { Text("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do e
列表中的导航链接
中的多行文本
似乎不起作用
代码如下:
struct ContentView : View {
var body: some View {
List(1...5) { _ in
NavigationLink(destination: EmptyView()) {
Text("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.")
.lineLimit(nil)
}
}
}
}
删除NavigationLink
,文本的行为与预期一致
有没有办法解决这个问题,或者这是一个bug?更新
看来Beta 5已经解决了这个bug
Beta 4及以前版本的变通方法:
导航链接似乎已“断开”。但您可以使用动态导航目标链接。我知道这太冗长了,但如果你需要一条出路,就在这里。至少在NavigationLink工作得更好之前
struct ContentView:View{
var body:一些观点{
导航视图{
TopView().navigationBarTitle(文本(“顶视图”))
}
}
}
结构TopView:视图{
让detailView=DynamicNavigationDestinationLink(id:\String.self){中的数据
DetailView(传递数据:数据)
}
var body:一些观点{
清单(1…5){i in
文本(“Lorem ipsum door sit amet,concetetur adipiscing elit,sed do eiusmod temporal incident ut laboure and dolore magna aliqua.”)
.lineLimit(无)
.tapAction{self.detailView.presentedData?.value=“行的详细信息(i)”}
}
}
}
结构详细视图:视图{
让我们传递数据:字符串
var body:一些观点{
文本(传递数据)
}
}
在当前的XCode 13.1 Beta版中,当文本视图位于容器视图中时,我仍然有一个问题。我可以通过给行(容器)一个最小高度来解决这个问题:
Text("blabla").lineLimit(2).frame(minHeight: 50)
更新了答案,因为beta 5似乎解决了这个问题。