NSTextField 与 LengthFormatter

问题描述 投票:0回答:1

近几个月来,我一直在尝试将 LengthFormatter 添加到 Swift 5.2 和 Xcode 11.7 中的 NSTextField 中。在 Interface Builder 中添加它们并不是问题。

感谢您的帮助, 爱能

当应用程序运行时,我尝试在文本字段中输入自定义值(例如 500 或其他值),我只是从 macOS 收到提示音,表明无法输入该值。所以我的问题是如何在文本字段中输入数字,长度格式器将接受数字,格式化它们并在文本字段中再次显示它们。如果将使用 NSStepper 更改 LengthFormatter 的值,则 LengthFormatter 接受该值,但不直接从 TextField 输入。

上网查了一下,好像没有人用这个组合。

swift macos nstextfield nsformatter
1个回答
0
投票

来自

LengthFormatter
的文档:

提供线性距离本地化描述的格式化程序,例如长度和高度测量。

LengthFormatter
不解释和验证值的文本表示。

来自

LengthFormatter.getObjectValue(_:for:errorDescription:)
的文档:

NSLengthFormatter 类不支持此方法。

LengthFormatter
不能用于验证
NSTextField
的内容。它仅用于显示目的。使用
NumberFormatter
验证
NSTextField
中的数字。

© www.soinside.com 2019 - 2024. All rights reserved.