修改控件SwiftUI的属性
我是新使用修改控件SwiftUI的属性,swift,swiftui,Swift,Swiftui,我是新使用SwiftUI的,我不知道如何才能使按钮更改控件的属性,例如,另一个文本字段 例如: HStack { SecureField("Password", text: $password) .frame(width: 330, height: 50, alignment: .bottomLeading) .textFieldStyle(PlainTextFie
SwiftUI
的,我不知道如何才能使按钮更改控件的属性,例如,另一个文本字段
例如:
HStack {
SecureField("Password",
text: $password)
.frame(width: 330,
height: 50,
alignment: .bottomLeading)
.textFieldStyle(PlainTextFieldStyle())
Button(action: {}) {
Image(systemName: "eye.fill")
.frame(width:10,
height:10)
.foregroundColor(Color.secondary)
.fixedSize()
}
}
我想在按下按钮时查看当前密码,但我不知道如何调用我的安全域,因为我没有ID
(使用Swift,我可以创建一个IBOulet
和iAction
,但我不知道如何在SwiftUI
上实现这一点)假设它是在某个专用视图中完成的,您可以从某个视图模型向其中传输密码字符串,等等,方法如下
struct DemoShowPassword: View {
@Binding var password: String
@State private var showPassword = false
var body: some View {
HStack{
if showPassword {
TextField(" Password", text: $password) .frame(width: 330, height: 50, alignment: .bottomLeading)
.textFieldStyle(PlainTextFieldStyle())
} else {
SecureField(" Password", text: $password) .frame(width: 330, height: 50, alignment: .bottomLeading)
.textFieldStyle(PlainTextFieldStyle())
}
Button(action:{
self.showPassword.toggle()
}){
Image(systemName: "eye.fill")
.frame(width:10, height:10)
.foregroundColor(Color.secondary)
.fixedSize()
}
}
}
}