Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/106.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios UITextField应只接受正整数,并为rest发出警报消息_Ios_Objective C_Iphone - Fatal编程技术网

Ios UITextField应只接受正整数,并为rest发出警报消息

Ios UITextField应只接受正整数,并为rest发出警报消息,ios,objective-c,iphone,Ios,Objective C,Iphone,除了将键盘类型设置为“仅数字”之外,我需要编写哪些代码才能使UITextField只接受正整数(整数)。当用户输入字符/分数/负数/特殊字符时,它应该提醒用户。请告诉我。谢谢。我不知道是否有更好的方法,但您可以使用UITextFieldDelegate-自己验证输入的文本,如果有人输入了“错误”的内容,则显示AlertController我不知道是否有更好的方法,但是您可以使用UITextFieldDelegate,并亲自证明输入的文本,如果有人输入了“错误”的内容,则显示AlertContro

除了将键盘类型设置为“仅数字”之外,我需要编写哪些代码才能使UITextField只接受正整数(整数)。当用户输入字符/分数/负数/特殊字符时,它应该提醒用户。请告诉我。谢谢。

我不知道是否有更好的方法,但您可以使用UITextFieldDelegate-自己验证输入的文本,如果有人输入了“错误”的内容,则显示AlertController

我不知道是否有更好的方法,但是您可以使用UITextFieldDelegate,并亲自证明输入的文本,如果有人输入了“错误”的内容,则显示AlertController,您可以实现UITextFieldDelegate方法

-(BOOL)textFieldShouldReturn:(UITextField *)textField {}

在其中,您可以检查textField的text属性,并使用NSNumberFormatter类方法numberFromString:将其转换为NSNumber,然后查看intValue是否为正值。

您可以实现UITextFieldDelegate方法

-(BOOL)textFieldShouldReturn:(UITextField *)textField {}

在其中,您可以检查textField的text属性,并使用NSNumberFormatter类方法numberFromString:将其转换为NSNumber,然后查看intValue是否为正值。

我要做的是创建avalidate函数,每次启动UITextFieldDelegate方法时我都会调用该函数

另一个选项是在保存信息时验证末尾的所有字段

对于整数,我发现以下方法效果良好(使用):

-(bool)验证字段{
如果(textField.text.length>0){
NSScanner*scanner=[NSScanner scannerWithString:textField.text.length.text];
双d;
BOOL success=[scanner scanDouble:&d];
如果(!成功){
返回false;
}
其他的
{
if(d<0)
{
返回false;
}
}
}
}

希望这有帮助。

我所做的是创建avalidate函数,每次启动UITextFieldDelegate方法时都会调用该函数

另一个选项是在保存信息时验证末尾的所有字段

对于整数,我发现以下方法效果良好(使用):

-(bool)验证字段{
如果(textField.text.length>0){
NSScanner*scanner=[NSScanner scannerWithString:textField.text.length.text];
双d;
BOOL success=[scanner scanDouble:&d];
如果(!成功){
返回false;
}
其他的
{
if(d<0)
{
返回false;
}
}
}
}

希望这有帮助。

好吧,我会尝试让你知道,我会尝试让你知道,我会尝试让你知道,它是如何工作的好吧,我会尝试让你知道,它是如何工作的我也需要调用委托方法??是的,谢谢你的帮助。我也会试试这个,让你知道。这将取决于你的方法。。。如果要通过文本更改查找如果要通过文本更改查找,可以使用:textFieldShouldReturn。。。如果您想知道textfield何时辞去第一响应者的职务,可以使用:textfielddidediting。。。但是,如果您想在保存之前将其作为验证过程的一部分,则不需要使用委托方法。在这种情况下,您可以使用按钮操作来测试它…我还需要调用委托方法??是的,谢谢你的帮助。我也会试试这个,让你知道。这将取决于你的方法。。。如果要通过文本更改查找如果要通过文本更改查找,可以使用:textFieldShouldReturn。。。如果您想知道textfield何时辞去第一响应者的职务,可以使用:textfielddidediting。。。但是,如果您想在保存之前将其作为验证过程的一部分,则不需要使用委托方法。在这种情况下,您可以使用按钮操作来测试它。。。