I am trying to create my own modifier for "textfield" in swiftUI. I created the following modifier in extension.
extension TextField{
public func LoginInputStyle(_ flg:String = "1") -> TextField{
if(flg == "1"){
return self.font(.system(size: 16, design: .rounded))
.frame(maxWidth: 300)
.textFieldStyle(RoundedBorderTextFieldStyle()) as! TextField<Label>
}
return self.font(.system(size: 16, design: .rounded))
.frame(maxWidth: 300)
.textFieldStyle(RoundedBorderTextFieldStyle()) as! TextField<Label>
}
}
struct NewLogin: View {
@State public var mail:String = ""
var body:some View{
VStack(){
TextField("input mailaddress",text: $mail).LoginInputStyle()
}
}
}
When I build the modifier, it stops with the following error
「Could not cast value of type 'SwiftUI.ModifiedContent<SwiftUI.ModifiedContent<SwiftUI, SwiftUI._EnvironmentKeyWritingModifier<Swift.Optional<SwiftUI.Font>>, SwiftUI._FlexFrameLayout>, SwiftUI.TextFieldStyleModifier<SwiftUI.RoundedBorderTextFieldStyle>>' (0x7f9ea6833d48) to 'SwiftUI.TextField<SwiftUI.Text>' 」
How can I fix this? Thank you in advance.