任何人都可以通过键盘告诉如何只访问字母表。数字和特殊字符不应输入UILabel
。
我是iOS编程的新手,我正在搜索过去2小时没用的内容。帮助我摆脱这个
答案 0 :(得分:0)
试试这个......
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range
{
static NSCharacterSet *charSet2 = nil;
if(textField==txtfirstname)
{
if(!charSet2)
{
charSet2 = [[NSCharacterSet characterSetWithCharactersInString:@"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ "] invertedSet];
}
NSRange location = [string rangeOfCharacterFromSet:charSet2];
return (location.location == NSNotFound);
}
}
希望这会有所帮助......
答案 1 :(得分:0)
要获得通知,您必须使用UITextField的委托功能。如果你使用UILabel。您可能必须继续使用键盘通知。相反,您可以使用UITextField。您可以使用UITextField边框样式属性使其看起来像UILabel。
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSCharacterSet *myCharSet = [NSCharacterSet characterSetWithCharactersInString:@"0123456789"];
for (int i = 0; i < [string length]; i++)
{
unichar c = [string characterAtIndex:i];
if (![myCharSet characterIsMember:c])
{
return YES;
}
else
{
return NO;
}
}
}
答案 2 :(得分:0)
您可以使用this的帮助形式链接您想要的任何类型的键盘