![](/img/trans.png)
[英]Iphone Objective-C textfield property autocorrectionType and autocapitalizationType not work simultaneous
[英]iphone / objective-c how to check to see if a textfield is empty
我在iphone應用程序中有一個典型的文本字段,而在ViewWillAppear中,我想使用文本字段中的文本做一些邏輯。
如果txtField.text為空,我希望選擇下一個文本字段txtField2進行輸入。
我試圖通過以下方式實現這一目標:
if (txtField.text != @"") [txtField2 becomeFirstResponder];
但是經過一些測試,txtField.text(雖然是空的)仍然沒有注冊為等於@“”我錯過了什么?
比較兩個指針變量時,實際上比較了這兩個變量指向的內存中的地址。 這種表達式唯一的情況是,當你有兩個指向一個對象的變量時(因此指向內存中的同一個地址)。
要比較對象,常見的方法是使用isEqual:
在NSObject
定義。 像NSNumber
, NSString
這樣的類有額外的比較方法,名為isEqualToNumber:
, isEqualToString:
等等。 以下是您的情況示例:
if ([txtField.text isEqualToString:@""]) [txtField2 becomeFirstResponder];
如果你想要做一些事情,如果NSString
實際上不是空的使用!
用來扭轉表達意義的符號。 這是一個例子:
if (![txtField.text isEqualToString:@""]) [txtField2 becomeFirstResponder];
你必須檢查:
if (txtField.text.length != 0)
要么
if ([txtField.text isEqualToString:@""])
寫你的方式: (txtField.text != @"")
你實際上比較pointers
字符串的pointers
,而不是它們的實際字符串值。
您還必須檢查是否為零
if([textfield.text isEqualToString:@""] || textfield.text== nil )
只有當用戶單擊文本字段時,您才能使用isEqualToString進行檢查,否則文本字段將為零,因此您可以更好地檢查兩種情況。
祝一切順利
我們已經有內置方法返回布爾值,指示文本輸入對象是否有任何文本。 檢查帶鏈接的簡單解決方案
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.