2012-04-04 2 views
0

첫 번째 응답자와 같이 숫자 패드가있는 여러 textField를 사용해야하는 응용 프로그램을 만들고 있습니다. 숫자 패드에 추가 될 음수 버튼으로 사용할 이미지를 만들었습니다.현재 응답자를 확인 하시겠습니까?

숫자 패드가 입력중인 textField를 확인하는 방법이 있는지 궁금합니다.

도움이 될 것입니다.

답변

1

잠재적 인 모든 첫 번째 응답자가 UITextField 인 경우 다른 방법은 컨트롤러 클래스를 UITextFieldDelegate 프로토콜과 일치시키고 편집을 시작할 때 현재 편집중인 UITextView에 대한 참조를 가져 오는 것입니다. 당신의 .H에서 클래스를 Conform을 :

@property (weak, nonatomic) UITextField *editingField; 

이 그런 다음하는 .m에 합성 :

MyController : NSObject <UITextFieldDelegate> //Might often be a UIViewController rather than an NSObject subclass... 

는 속성 정의

@synthesize editingField = __editingField 

을 다음 구현 :

- (void)textFieldDidBeginEditing:(UITextField *)textField 
{ 
    [self setEditingField:textField]; 
} 

- (void)textFieldDidEndEditing:(UITextField *)textField 
{ 
    [self setEditingField:nil]; 
} 

지금 언제든지 첫 번째 응답자 인 텍스트 필드를 알고 싶을 때마다 :

UITextField *firstResponder = [self editingField]; 
0

제한된 수가있는 경우 [textFieldN isFirstResponder]를 사용하여 각각을 쿼리 할 수 ​​있습니다. 범용 유틸리티가 필요한 경우 뷰의 각 하위 뷰를보고 해당 뷰가 첫 번째 응답자인지 여부 또는 하위 뷰보다 하위 계층 뷰가 있는지 여부를 확인할 수 있습니다.

관련 문제