[英]SwiftUI: How to change placeholder font of TextField?
TextField(Text("Placeholder").font(.custom("font-name", size: 22)), $text)
如何更改 TextField 的占位符字体? 也许使用一些属性字符串。 我试图将其包装为Text
但没有运气,出现下一个错误:
初始化程序 'init(_:text:onEditingChanged:onCommit:)' 要求 'Text' 符合 'StringProtocol'
1.简单地你可以使用这个:
TextField("", text: $text, prompt: Text("Placeholder").font(.custom("font-name", size: 22)))
2.您可以使用您的自定义占位符:
制作你的占位符:
public struct PlaceholderStyle: ViewModifier {
var showPlaceHolder: Bool
var placeholder: String
public func body(content: Content) -> some View {
ZStack(alignment: .leading) {
if showPlaceHolder {
Text(placeholder)
.padding(.horizontal, 15)
}
content
.foregroundColor(Color.white)
.padding(5.0)
}
}
}
用法 :
TextField("", text: $data)
.modifier(PlaceholderStyle(showPlaceHolder: data.isEmpty,
placeholder: "My Placeholder"))
可以使用不同的构造函数来完成,使用prompt
,比如
TextField("", text: $text, prompt: Text("Placeholder").font(.custom("font-name", size: 22)))
// or
TextField(text: $text, prompt: Text("Placeholder").font(.custom("font-name", size: 22))) {
Text("Label here or empty view")
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.