Iphone 如何验证只允许0,1,…9和的文本字段。符号
我在应用程序中放置了4个文本字段 我需要4个文本字段只允许数字0,1…9和。象征 为此,我放置了键盘数字和标点符号。这是正常的,但在允许ABC、/、(,中,所有都被激活 但在我的文本字段中,只允许0,1,…9和.symbol 我怎样才能做到这一点 谁能帮我一下吗Iphone 如何验证只允许0,1,…9和的文本字段。符号,iphone,Iphone,我在应用程序中放置了4个文本字段 我需要4个文本字段只允许数字0,1…9和。象征 为此,我放置了键盘数字和标点符号。这是正常的,但在允许ABC、/、(,中,所有都被激活 但在我的文本字段中,只允许0,1,…9和.symbol 我怎样才能做到这一点 谁能帮我一下吗 提前感谢您。如果您的目标是iOS 4.1及更高版本,您可以使用UIKeyboardTypeDecimalPad。如果您需要支持旧版本,需要小数点,并且不需要任何其他内容,则必须创建自定义键盘 如果要筛选出其他键而不删除它们,请指定某个对
提前感谢您。如果您的目标是iOS 4.1及更高版本,您可以使用UIKeyboardTypeDecimalPad。如果您需要支持旧版本,需要小数点,并且不需要任何其他内容,则必须创建自定义键盘 如果要筛选出其他键而不删除它们,请指定某个对象作为文本字段的委托。该对象应包含以下代码:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
static NSCharacterSet *charSet = nil;
if(!charSet) {
charSet = [[[NSCharacterSet characterSetWithCharactersInString:@"0123456789."] invertedSet] retain];
}
NSRange location = [string rangeOfCharacterFromSet:charSet];
return (location.location == NSNotFound);
}
如果您的目标是iOS 4.1及更高版本,则可以使用UIKeyboardTypeDecimalPad。如果您需要支持旧版本,需要小数点,并且不需要其他任何东西,则必须创建自定义键盘 如果要筛选出其他键而不删除它们,请指定某个对象作为文本字段的委托。该对象应包含以下代码:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
static NSCharacterSet *charSet = nil;
if(!charSet) {
charSet = [[[NSCharacterSet characterSetWithCharactersInString:@"0123456789."] invertedSet] retain];
}
NSRange location = [string rangeOfCharacterFromSet:charSet];
return (location.location == NSNotFound);
}
默认键盘只允许o、1、…9和。对于文本字段,UIKeyboardTypeDecimalPad类型仅显示它们,但仅在4.1和更高版本中可用。对于较旧版本,您可以过滤掉视图中的其他键,但用户仍然可以看到按钮。如果按钮可见,则没有问题。我使用4.1和更新的版本那么我该如何过滤它们。是的,但是,ABC和#+-按钮也处于活动状态。但是可以将其禁用抱歉,但我不知道。默认键盘只允许o、1、…9和。对于文本字段,UIKeyboardTypeDecimalPad类型仅显示它们,但仅在4.1和更高版本中可用。对于旧版本版本,您可以过滤掉视图中的其他键,但按钮仍然对用户可见。如果按钮可见,没有问题……我使用4.1和更高版本,那么如何过滤它们。是的,它可以工作,但是ABC和#+-按钮也处于活动状态。但是可以将其禁用抱歉,但我不知道。