簡體   English   中英

依次顯示兩個相同的警報視圖。 如何區分警報1和警報2的文本?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM