如何在 SwiftUI 中为 NavigationLink 创建工厂方法?
Posted
技术标签:
【中文标题】如何在 SwiftUI 中为 NavigationLink 创建工厂方法?【英文标题】:How to create a factory method for NavigationLink in SwiftUI? 【发布时间】:2021-01-17 05:01:22 【问题描述】:我想为 NavigationLink:s 创建一个工厂方法如下:
func makeNavigationLink(label: String, destination: View) -> some View
NavigationLink(destination: StatsView(), label:
Text(label)
.foregroundColor(.white)
.font(.title)
)
这会产生错误:Protocol 'View' can only be used as a generic constraint because it has Self or associated type requirements
这应该如何编码?
【问题讨论】:
【参考方案1】:添加视图约束。
func makeNavigationLink<Destination: View>(label: String, destination: Destination) -> some View
NavigationLink(destination: StatsView(), label:
Text(label)
.foregroundColor(.white)
.font(.title)
)
【讨论】:
以上是关于如何在 SwiftUI 中为 NavigationLink 创建工厂方法?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 SwiftUI 中为 NavigationLink 创建工厂方法?
如何在按钮单击时在 SwiftUI 中为 TextField 设置文本
如何在 SwiftUI 中为 Start->Max->Start 设置动画?
如何在swift / SwiftUI中为滑动手势设置菜单栏图标的操作