如何根据UITextField中的文本创建UIAlertView?

时间:2013-01-04 18:01:20

标签: ios6 uitextfield uialertview xcode4.5

我想在文本字段中输入文本并根据文本(如果它说" No")我希望弹出警报视图。我在界面构建器中创建了一个UITextField,并将其附加到文件所有者中的UITextField委托,以便全部处理。但是当我在文本字段中输入文本时,特别是没有,并且单击文本字段或删除键盘时,不会弹出警报视图。我在viewcontroller.m文件中为此创建了一个完整的方法。这是该方法的代码。

- (void)engageAlert {

 if (myTextField.text == @"No") {
      theAlertView = [[UIAlertView alloc] initWithTitle:@"Notice" message:@"MyMessageHere"
      delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil];
      [theAlertView show];
 }

}

我在这里遗漏了什么吗?当我在文本字段中输入No时没有任何反应。

1 个答案:

答案 0 :(得分:0)

我认为罪魁祸首就是行

myTextField.text == @"No" 

因为你要比较两个永远不会匹配的指针。

@“No”= 0x12341234或NSString的静态地址的任何地址(@“”可以被认为是创建NSString对象的编译器的简写)

你想要的是

if( [myTextField.text isEqualToString:@"No"])

同时检查你是不是要用the​​AlertView泄漏内存,因为我看不到你在解冻片段中释放它的位置。