我刚刚开始在SwiftUI中进行编码,我对构建UI的新声明式方法感到非常兴奋。我试图找到一种整洁的方式来组织我的所有组件,并通过我的应用程序一致地重用它们(在不同的视图中使用相同的按钮等)。
我可以想到两种方法。
1)一种方法是创建一个ButtonStyle
和按钮标签View
。您可以选择使用令牌系统。
示例
使用按钮
struct ContentView: View {
static let capsuleButton = TokenButton(capsuleText: "Login")
static var body: some View {
Button(action: {}){
self.capsuleButton.buttonLabel
}.buttonStyle(self.capsuleButton.buttonStyle)
}
}
2)第二步是为每个按钮组件创建一个服装View
,并在其他视图中需要时调用它
示例
自定义按钮View
struct MyButton: View {
var text: String
@Binding var isActive: Bool
var body: some View {
Button(action: {
self.isActive = true
}){
Text(text)
}
}
}
使用按钮
struct ContentView: View {
@State var isActive = false
var body: some View {
MyButton(text: "Button", isActive: $isActive)
}
}
在SwiftUI中使用最佳实践是什么?
我非常感谢其他开发人员的反馈。