2013-11-28 45 views
-9

我已經在故事板中設置了文本字段(homeTeam)的佔位符文本(例如18s以下)。現在我想檢查下面的情況。比較文本字段中的佔位符文本

- (BOOL)textFieldShouldBeginEditing:(UITextField *) textField 
{ 
    if ([_homeTeam.text isEqualToString:@"e.g. Under 18s"]) { // e.g. Under18s 
     [_homeTeam setPlaceholder:@""]; 
    } 
} 

但是,病情永遠不會變成現實。我在這裏錯過了什麼? _homeTeam.text在我使用NSlog進行跟蹤時爲空。爲什麼這樣?

請建議。

+0

嘗試此鏈接http://stackoverflow.com/questions/ 1328638/placeholder-in-uitextview – codercat

+2

在'textFieldShouldBeginEditing'裏面設置Place holder到@「」有什麼用?當您在文本字段中鍵入字符時,它會自動隱藏佔位符。那麼你想用這個代碼做什麼? –

回答

2

改變你的if條件下,它應該是_homeTeam.placeholder_homeTeam.text因爲你設置佔位符文本不是UITextField文本。

- (BOOL)textFieldShouldBeginEditing:(UITextField *) textField 
{ 
    if ([_homeTeam.placeholder isEqualToString:@"e.g. Under 18s"]) { // e.g. Under18s 
     [_homeTeam setPlaceholder:@""]; 
    } 
} 
1

實際上,你要比較反對placeholder屬性,而不是text(這是由用戶輸入)。

另外,我不是指textField(而不是直接_homeTeam,因爲你可能會添加其他後來的文本字段),因爲這樣的:

- (BOOL)textFieldShouldBeginEditing:(UITextField *) textField 
{ 
    if ([textField.placeholder isEqualToString:@"e.g. Under 18s"]) { // e.g. Under18s 
     [textField setPlaceholder:@""]; 
    } 
}