iPhone

텍스트뷰 포커스 이동 이벤트, 텍스트뷰 클릭 이벤트

WhiteGom 2012. 5. 24. 18:03

해더파일

//텍스트 필드 선언 

@property (retain, nonatomic) IBOutlet UITextView* nameTextEdit;

@property (retain, nonatomic) IBOutlet UITextView* companyNameTextEdit;

@property (retain, nonatomic) IBOutlet UITextView* cellPhoneTextEdit;

@property (retain, nonatomic) IBOutlet UITextView* visitObjectTextEdit;

.m 파일 

@synthesize nameTextEdit;

@synthesize companyNameTextEdit;

@synthesize cellPhoneTextEdit;

@synthesize visitObjectTextEdit;



//텍스트 필드 클릭시 호출함수  ( 테그가 3인 텍스트 필드 클릭시 메시지 히든 )

-(BOOL)textViewShouldBeginEditing:(UITextView *)textView{

    if(textView.tag ==3)

        [massage setHidden:YES];

    return YES;

}


//텍스트 필드에 글을 쓰면 호출되는 함수 (엔터키일 경우 키보드를 닫고 이동시키거나 종료함수를 호출시킨다. )

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range 

 replacementText:(NSString *)text

{

    

    if(textView.tag ==3)

        [massage setHidden:YES];

       // 엔터일 경우 이벤트 실행 

    if ([text isEqualToString:@"\n"]) { 

       // 키보드를 닫기       

       // [textView resignFirstResponder]; 

        

     // 클릭된 텍스트 필드의 테그에 따라서 다음 필드로 이동 마지막일 경우는 종료함수 호출 

        if(textView.tag ==0)

            [self.companyNameTextEdit becomeFirstResponder];

        else if(textView.tag ==1)

            [self.cellPhoneTextEdit becomeFirstResponder];

        else if(textView.tag ==2)

            [self.visitObjectTextEdit becomeFirstResponder];

        else if(textView.tag ==3)

            [self finishEvent];

 

       //리턴값을 FALSE로 주어 입력을 막고 이벤트 실행 

        return FALSE;

    }


    // TRUE일 경우 입력 실행 

    return TRUE;

}