-1

我试图发送警报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] )

4

2 回答 2

1

您的错误可能是因为“ continuityRingFinalR2”是编译器正在查找某个数值时的标签。

尝试使用这个:

if ([[_continuityRingFinalR2.text floatValue] > x * y] ) {

(这个答案假设标签内的值确实是一个数字)

于 2013-01-13T01:48:21.787 回答
1

你在处理两个不同的输入吗?从所写的内容来看,当您采用浮点值 x 并看到

if (x > x * y)

这永远不会成立,因为您设置了 y = 1.67(或任何其他大于或等于 1 的值)。

您是要比较不同的文本字段吗?

此外,如另一个答案中所述,您还需要使用字段的浮点值而不是文本。

于 2013-01-13T01:51:18.893 回答