我想使用自定义的 NSFormatter 来判断 NSTokenField 中字符串的长度。
我已经实现了 NSFormatter 并将其连接到 xib 和所有这些中,现在当我使用连接到 NSTokenField 的格式化程序就地运行我的应用程序时,我收到此错误:
2011-12-31 18:15:11.761 MyApp[4706:a0f] -[NSCFArray length]: unrecognized selector sent to instance 0xf4a530
(gdb) describe 0xf4a530
Undefined command: "describe". Try "help".
(gdb) p 0xf4a530
$1 = 16033072
(gdb) po 0xf4a530
<NSCFArray 0xf4a530>(
{
Format = "%01d";
FormatIndex = 0;
Name = "$Counter$";
},
{
Format = "";
Name = hey;
}
)
现在我知道被评估的文本单元确实包含一个项目数组,所以我可能需要将它们转换为一个字符串,但是我的代码中出现错误的地方在这里:
//Set this so that user can't enter a super long amount and overflow the character array lower in the engine.
[fieldFormatter setMaximumLength:40];
我只是评估 fieldFormatter 对象并将其成员变量 int 设置为 40...真的不应该评估文本...对吗?