[英]Swift: UIAlert in function - Use of unresolved identifier 'present'
[英]UIAlert if function
我试图做一个计算器,然后我有3个UITextFields。 它是力的简单计算。 因此,您必须至少放入2个字段,然后才能计算其他值。 如果2个字段中没有任何内容,则必须有一个UIAlertView。
我已经有一个UIAlertView并且它可以工作。 但是问题是我将If函数设置为两个字段必须在其中包含一些文本,而当我尝试将它仅放在一个字段中时,UIAlertView不会显示,您能帮我吗?
这是我正在使用的代码...
- (IBAction)berechnen:(id)sender
{
float kraft = [kraftEingabe.text floatValue];
float masse = [masseEingabe.text floatValue];
float beschleunigung = [beschleunigungEingabe.text floatValue];
if (![masseEingabe.text length] > 0 && ![beschleunigungEingabe.text length] > 0) {
UIAlertView *nachricht =
[[UIAlertView alloc]
initWithTitle:@"Achtung"
message:@"Es müssen 2 Variablen eingegeben werden"
delegate:nil cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[nachricht show];
}
if ([masseEingabe.text length] > 0 && [beschleunigungEingabe.text length] > 0) {
float berechnung = masse * beschleunigung;
[kraftEingabe setText:[NSString stringWithFormat:@"%.5f", berechnung]];
}
if ([kraftEingabe.text length] > 0 && [beschleunigungEingabe.text length] > 0) {
float berechnung = kraft / beschleunigung;
[masseEingabe setText:[NSString stringWithFormat:@"%.5f", berechnung]];
}
}
|| 表示OR,&&表示AND。 如果执行arg1 || arg2,如果其中之一为空,您将收到警报。
if (![masseEingabe.text length] > 0 || ![beschleunigungEingabe.text length] > 0) {
而且我也不必费心打开Xcode自己尝试一下,但是,如果那行不通,请尝试(!([thingy.text length]>0) || !(samethingagain)
因此,如果UITexfield中的任何一个为空, UITexfield
显示alertView吗? 然后@Oscar
是正确的,您必须使用||
如果仅当UITextfield
为空时才想显示UIAlertView
则为逻辑运算符。
仅当两个UITextfield均不大于0时,才会显示警报
if (![masseEingabe.text length] > 0 && ![beschleunigungEingabe.text length] > 0)
所以应该是:
if (![masseEingabe.text length] > 0 || ![beschleunigungEingabe.text length] > 0)
在我看来,您设置条件的方式有点难以理解,我更喜欢:
if ([masseEingabe.text length] == 0 || [beschleunigungEingabe.text length] == 0)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.