2014-09-28 86 views
0

我做了一个自定义的NSFormatter子类,并想返回的错误信息NSFormatter显示错误

但是分配错误,并返回有效= NO不会做的伎俩(没有显示任何错误)

- (BOOL)isPartialStringValid:(NSString **)partialStringPtr 
     proposedSelectedRange:(NSRangePointer)proposedSelRangePtr 
       originalString:(NSString *)origString 
     originalSelectedRange:(NSRange)origSelRange 
      errorDescription:(NSString **)error 
{ 
    BOOL valid = YES; 

    NSString *proposedString = *partialStringPtr; 
    if ([proposedString length] < self.minLength) { 
     *error = @"TOO SHORT"; 
     valid = NO; 
    } 

    return valid; 
} 

我不使用绑定

回答

0

我认为你的问题,因为的NSControl(这验证用户输入)不与已经实现的方法(dcumentation)委托:

control:didFailToValidatePartialString:errorDescription: 

如果您希望在@文本字段,而不是用户inputed字符串“太短”显示,你可以返回@“太短”,在newString方法:

- (BOOL)isPartialStringValid:(NSString *)partialString 
    newEditingString:(NSString **)newString 
    errorDescription:(NSString **)error