2012-11-20 4 views
0

좋아, txt 국가가 올바르게 설정되지 않았기 때문에 txtCountry가 특정 문자를 허용하지 않지만이 문자 필드를 편집하려고합니다. 누군가 나를 위해 이걸 고칠 수 있을까? 아마도 약간의 세부적인 실수를 저 지르게 될 것입니다.하나의 UITextField에서 문자를 필터링하지 않습니다.

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{ 
if ([textField isEqual: txtCountry]) { 

NSCharacterSet *cs = [[NSCharacterSet characterSetWithCharactersInString:LEAGELNUM] invertedSet]; 
NSString *filtered = [[string componentsSeparatedByCharactersInSet:cs]  componentsJoinedByString:@""]; 
BOOL basicTest = [string isEqualToString:filtered]; 
return basicTest; 
} 

}

답변

0

당신은 방법으로 텍스트 필드의 이름을 삽입 할 필요가 없습니다. 대신이 작업을 수행하십시오 :

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { 
    if ([textField isEqual: txtCountry]) { 
     //return YES or NO here depending on your criteria 
    } 
} 
+0

괜찮 았지만 공개 무효 오류가 발생했습니다.이 부분을 도와 줄 수 있습니까? 제 질문을 업데이트했습니다. – moo

+0

@moo "공개 무효 오류가 발생했습니다"라고 말하지 마십시오. 정확한 오류 텍스트, * 및 오류를 생성하는 코드를 복사하여 붙여 넣으십시오. –

관련 문제