[英]Two identical alert views shown in sequence. How can I differentiate between texts from alert 1 and alert 2?
在我的应用程序中,我显示第一个警报视图,要求输入密码和用户名,然后输入:
NSString username1 = [alertView textFieldAtIndex:0].text;
NSString password1 = [alertView textFieldAtIndex:1].text;
接下来,我第二次显示确切的警报视图,但是这次是空的,并带有不同的消息,只是在创建凭据之前确认密码和用户ID。 随后是:
NSString username2 = [alertView textFieldAtIndex:0].text;
NSString password2 = [alertView textFieldAtIndex:1].text;
但是看起来username2和password2会从username1和password1中拾取值。 实际上,例如,如果我在username2中键入一个不同的值,它将反映在username1中!
我在某处阅读,应该使用一种叫做“标签”的东西。 那么,如何将这个“标签”内容与凭据1而不是凭据2绑定在一起,以便从Alert1和Alert2获得独立的值? 为了比较这些值并确保用户输入正确的凭据。
或者,还有其他简单的方法吗?
谢谢您的帮助
由于使用的UITextField
是相同的,因此text
属性返回的NSString
指针将始终反映字段中的内容,而不管访问该属性时的内容如何。 您需要copy
字符串:
NSString username1 = [[alertView textFieldAtIndex:0].text copy];
NSString password1 = [[alertView textFieldAtIndex:1].text copy];
如果您不使用ARC,那么当然还必须在完成后释放它们:
[username1 release];
[password1 release];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.