Iphone 如何针对另一个文本字段的值对文本字段应用验证?
我想对文本字段应用验证。我有两个文本字段,当第二个文本字段值等于“AM”时,我只想输入0-11的值。如何针对另一个文本字段的值应用验证文本字段Iphone 如何针对另一个文本字段的值对文本字段应用验证?,iphone,uitextfield,nsrange,Iphone,Uitextfield,Nsrange,我想对文本字段应用验证。我有两个文本字段,当第二个文本字段值等于“AM”时,我只想输入0-11的值。如何针对另一个文本字段的值应用验证文本字段 提前感谢…从第二个文本字段中获取值,然后检查并验证 if([secTxtField.text isEqualToString:@"AM"]) { //do the validation for the first } 首先只检查这里的数字 - (BOOL)textField:(UITextField *)textField shouldCha
提前感谢…从第二个文本字段中获取值,然后检查并验证
if([secTxtField.text isEqualToString:@"AM"])
{
//do the validation for the first
}
首先只检查这里的数字
- (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];
if(!(location.location == NSNotFound))
{
if([secTxtField.text isEqualToString:@"AM"])
{
//get the first textField input
//Conver to int
//Check for less than 11
if (pass)
{
return YES;
}
else
{
return NO;
}
}
}
return (location.location == NSNotFound);
}
可以通过在视图控制器中保留对两个文本字段的引用来实现设计 然而,如果使用
UIPickerView
从少于12个项目中进行选择,则更符合苹果的人机界面指南 这样试试
- (BOOL) textFieldShouldBeginEditing:(UITextField *)textField{
if(textField==self.txt1 && [self.txt2.text isEqualToString:@"AM"]){
[self.txt1 setKeyboardType:UIKeyboardTypeNumberPad];
}
return YES;
}
- (BOOL) textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
if ([string isEqualToString:@""]) {
return YES;
}
if(textField==self.txt1 && [self.txt2.text isEqualToString:@"AM"]){
int no=[self.txt1.text intValue];
NSLog(@"%d",no);
int enteredno=[string intValue];
int sum=no*10+enteredno;
if (sum>11) {
return NO;
}
}
return YES;
}
这里txt1和txt2是第一个和第二个文本字段。将委托设置为两个文本字段 如何应用验证以及在何处应用验证?获取FirstTextField数据,将其转换为int并进行检查。或者检查字符串匹配模式并执行以下操作