Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c NSTokenField委托:(-tokenField:shouldAddObjects:atIndex:)不';当它是朴素的风格时,它不起作用_Objective C_Xcode_Nstokenfield - Fatal编程技术网

Objective c NSTokenField委托:(-tokenField:shouldAddObjects:atIndex:)不';当它是朴素的风格时,它不起作用

Objective c NSTokenField委托:(-tokenField:shouldAddObjects:atIndex:)不';当它是朴素的风格时,它不起作用,objective-c,xcode,nstokenfield,Objective C,Xcode,Nstokenfield,我的应用程序中有NSTokenField。我想要简单的样式(只想要接受一个值而不是更多)。所以我想使用委托验证数组中的输入文本 但当样式为普通时,此委托不会运行。当我将样式恢复为默认值时。它起作用了 它是我的委托代码 - (NSArray *)tokenField:(NSTokenField *)tokenField shouldAddObjects:(NSArray *)tokens atIndex:(NSUInteger)index { NSMutableArray *validTo

我的应用程序中有NSTokenField。我想要简单的样式(只想要接受一个值而不是更多)。所以我想使用委托验证数组中的输入文本 但当样式为普通时,此委托不会运行。当我将样式恢复为默认值时。它起作用了

它是我的委托代码

- (NSArray *)tokenField:(NSTokenField *)tokenField shouldAddObjects:(NSArray *)tokens atIndex:(NSUInteger)index
{
    NSMutableArray *validTokens = [NSMutableArray array];
    NSArray *supplierNames = [ary_suppliersFinal valueForKey:@"SupplierName"];   
    for (NSString *oneToken in tokens)
    {
        if ([supplierNames containsObject:oneToken ])
        {
            [validTokens addObject:oneToken];
        }
    }
    return validTokens;
}

怎么了?我应该怎么做才能使NSTokenField成为普通样式,只接受一个令牌,从数组中验证令牌?

您不能使用纯文本字段并验证值吗?是的,在普通模式下,验证令牌不起作用