2013-11-28 4 views
-9

나는 storyboard에 텍스트 필드 (homeTeam)의 자리 표시 자 텍스트 (예 : 18 세 미만)를 설정했습니다. 이제 아래 조건을 확인하고 싶습니다.텍스트 필드에 자리 표시 자 텍스트 비교

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

그러나 조건은 결코 실현되지 않습니다. 내가 여기서 무엇을 놓치고 있니? _homeTeam.text는 NSlog를 사용하여 추적 할 때 비어 있습니다. 왜 그래야만하지?

좋습니다. 당신이 자리 텍스트하지 UITextField의 텍스트를 설정하기 때문에

+0

은이 링크 http://stackoverflow.com/questions/ 시도 1328638/placeholder-in-uitextview – codercat

+2

'textFieldShouldBeginEditing' 안에 place holder를 @ ""설정하는 용도는 무엇입니까? 텍스트 입력란에 문자를 입력하면 자동으로 장소 소유자가 숨겨집니다. 그럼이 코드로 무엇을하려고합니까? –

답변

2

변화 당신의 if 상태를, 그것은 _homeTeam.placeholder하지 _homeTeam.text해야한다.

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

당신은 실제로 placeholder 특성에 대해 비교하고자하지 text (입력은 사용자입니다). (나중에 다른 텍스트 필드를 추가 할 수 있습니다로, 대신 직접 _homeTeam)

또한, 내가 대신 같은 textField를 참조 것 :

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