如何解决当需要NSFont时使用SwiftUI的Font.largeTitle
我总体上仍在学习SwiftUI和开发人员。与NSWhat无关的所有内容仍然让我失望。 而且我知道我的 issue 只是缺乏理解:D
Rn,我正在构建一个SwiftUI macOS 11应用程序,并且运行良好...但是SwiftUI有其局限性。
现在,我想使用NSTextField而不是SwiftUI的TextField(),bc自定义UI等...
我的代码:
func makeNSView(context: Context) -> NSTextField {
let textField = FocusAwareTextField()
textField.placeholderAttributedString = NSAttributedString(
string: placeholder,attributes: [
NSAttributedString.Key.foregroundColor: NSColor(Color.secondary),NSAttributedString.Key.font: NSFont(name: "SF Pro",size: 32)!
]
)
textField.isBordered = false
textField.delegate = context.coordinator
textField.backgroundColor = NSColor.clear
...
...
...
我的问题:
NSAttributedString.Key.font:
期望有NSFont
。
上面的代码构建良好,但是我宁愿坚持使用SwiftUI的动态字体系统并使用Font.largeTitle.bold()
,而不是手动定义使用 SF Pro 和字体大小。
我知道如何将Color.black
转换为NSColor(Color.black)
,但找不到字体的有效示例。
此外,如果有人可以解释发生的事情以便我能理解,而不是仅仅执行复制并粘贴。
非常感谢您!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。