我尝试发送警告if
UITextfield中用户输入的值超过输入值的1.67倍。
- (void)textFieldDidEndEditing:(UITextField *)textField
float x = ([_continuityRingFinalR2.text floatValue]);
float y = (1.67);
if ([_continuityRingFinalR2.text > x * y] )//errors here {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Warning" message:@"My message here" delegate:nil cancelButtonTitle: @"Ok" otherButtonTitles: nil];
[alert show];
}
我试图说_continuityRingCircuitR2.text是用户输入的1.67倍显示警报。我认为我几乎就在那里但只是在([_continuityRingFinalR2.text x * y] )
答案 0 :(得分:1)
您的错误可能是因为“continuityRingFinalR2
”是标签,而编译器正在寻找一些数值。
尝试使用:
if ([[_continuityRingFinalR2.text floatValue] > x * y] ) {
(这个答案假设你的标签内的值确实是一个数字)
答案 1 :(得分:1)
您是在处理两种不同的输入吗? 从写的内容来看,当你取浮点值x并看到
时,它永远不会更高if (x > x * y)
由于您设置y = 1.67(或任何其他大于或等于1的值),因此永远不会成为现实。
您的意思是比较不同的文字字段吗?
另外,如其他答案中所述,您还需要使用字段的浮点值而不是文本。