2012-04-28 3 views

답변

1

이 제대로이 UITextField에 느슨한 초점 (사용자가 다른 탭) 때의 UITextField에서 텍스트를 얻을 필요가있다. 이를 위해 다음이 필요합니다

  1. (yourClassName.h 파일) yourClassName.m이 방법 파일 구현으로 클래스를 선언 :

    - (void)textFieldDidEndEditing:(UITextField *)textField { 
        NSString *someStringOrWhateverYouNeed = textField.text; 
    } 
    

언제든지 사용자 키보드의 돌아 가기 버튼을 누르면 클래스가 알림을 받고이 메소드를 호출합니다. 나는 다른 IBAction를의를 생성하는 것이 좋습니다 수있는 다양한 이벤트 유형의

- (IBAction)getTextFieldEvent:(id)sender { 
    UITextField *currentTextField = (UITextField *)sender; 
    switch (currentTextField.tag) { 
     case 1: 
      // some code here for textField with tag = 1 
      break; 
     case 2: 
      // some code here for textField with tag = 2 
      break; 
     case 3: 
      // some code here for textField with tag = 3 
      break; 
     default: 
      // some default code here 
      break; 
    } 
} 

: 경우

당신은 당신이 특정 태그의 모든 TextField를 표시하고이 같은 일 IBAction를을 만들 수있는 여러 UITextFields에서 이벤트를 수집해야합니다. UITextField의 속성 (예 : 글꼴 등)을 변경할 필요가 없으면 IBOutlets가 실제로 필요하지 않습니다. 도움이 :)

+0

의견을 보내 주셔서 감사합니다. 대부분 IBActions를 만들지 않고도 다양한 이벤트 유형을 처리 할 수있는 방법에 관심이 많습니다.하지만 해결 방법이 없으며 이러한 IBActions를 모두 만들어야합니다. – JavaCake

+0

IBAction은 컨트롤의 이벤트를 처리하는 유일한 방법입니다. :) –

0

를 같은 이름을 가진 다른 IBAction를 연결을 수행

희망. 그런 다음 복제 방법을 지 웁니다. 두 텍스트 필드 모두 동일한 IBAction 메소드에 연결됩니다.

관련 문제