停止NSTokenField修剪空白
我想设置一个NSTokenField(NSTextField的子类)的字符串值,但我发现如果字符串以空格开头,它会将其删除。我想保留这个空间。我尝试应用没有运气的格式化程序。即:停止NSTokenField修剪空白
tokenField.stringValue = " 1"
这实际上将在现场读出“1”。
此外,我想格式化整数,但也保持零之前。即:
tokenField.stringValue = "001"
这也将在现场读出“1”。
我试过覆盖各种功能,没有运气。有任何想法吗?
谢谢!
从the documentation of NSTokenField:
在OS X 10.4,NSTokenField修剪空白周围令牌,但它不能在Mac系统版本10.5.0和10.5.1修剪空白。在OS X v10.5.2中,通过链接到v10.4二进制文件或链接到v10.5二进制文件并且不执行 tokenField(_:representObjectForEditing :) 方法,可以获得空白修剪行为。如果您不想要空白修剪行为,请链接到v10.5二进制文件并实现此方法,如果没有表示对象,则返回编辑字符串。
好吧,这有点老的方法的名称是不正确的,但它说:
如果你不希望空格修整行为,实现tokenField(_:representedObjectForEditingString :),如果没有表示的对象,则返回编辑字符串。
啊!我以为我正在实现该功能。现在我。谢谢! – JoeBayLD
您必须检查文本字段的格式化程序。你在用xib/storyboard吗? –
我找到了一个部分解决方案,并且正在制定自定义解决方案。问题是我使用的是NSTextField的子类NSTokenField。应用格式化程序似乎不能正常工作.. – JoeBayLD
您是否阅读过'NSTokenField'的文档?有一些关于空白修剪。 – Willeke