2011-01-30 4 views
3

내 iPhone 응용 프로그램에는 6 개의 textFields 및 tabBar (3 개의 버튼, 이전, 완료)이 있습니다.하나의 텍스트 필드에서 다음 텍스트 필드로 이동하는 방법 tabBar 버튼의 액션

내가해야 할 일은 다음 버튼을 클릭 할 때 포커스가 첫 번째 textField에서 다음 textField로 이동해야합니다. 이 코드를 사용할 때

if ([txt1 isFirstResponder]==YES) { 

    NSLog(@"TXT1"); 

    [txt1 resignFirstResponder]; 

    [txt2 becomeFirstResponder]; 

} 
else if ([txt2 isFirstResponder]==YES) { 

    [txt2 resignFirstResponder]; 

    [txt3 becomeFirstResponder]; 

} 
else if ([txt3 isFirstResponder]==YES) { 

    [txt3 resignFirstResponder]; 

    [txt4 becomeFirstResponder]; 

} 
else if ([txt4 isFirstResponder]==YES) { 

    [txt4 resignFirstResponder]; 

    [txt5 becomeFirstResponder]; 

} 
else if ([txt5 isFirstResponder]==YES) { 

    [txt5 resignFirstResponder]; 

    [txt6 becomeFirstResponder]; 

} 
else if ([txt6 isFirstResponder]==YES) { 

    [txt6 resignFirstResponder]; 

} 

는 NSLog가 무한한 시간을 인쇄 : 다음 버튼의 IBAction를에

나는 다음과 같은 코드를 작성합니다.

무엇을 할 수 있습니까 ??

답변

1

아차, 그 내 실수에서 유일한 resignFirstResponder을 둡니다. textField의 델리게이트를 파일 소유자에게 연결하는 걸 잊었습니다. 여러분, 고마워요.

+2

실수로 답을 만들지 말고 질문을 수정하십시오. – HelmiB

1

txt1 isFirstResponder 인 경우 txt2를 firstResponder로 설정하고 txt2가 첫 번째 응답자인지 확인해야 할 수 있습니다. 각 if 문 끝에 break;을 입력해야합니다.

+0

하지만 txt1 조건의 문장이 있다면 내 코드에 NSLog를 넣습니다. – Meghan

0

실제로 각 if 문에서 다른 필드로 이동할 때마다 키보드를 닫으 려하지 않으므로 resignFirstResponder이 필요하지 않습니다.

대신 txt6

관련 문제