2011-12-16 4 views
0

나는 하나의 텍스트 필드가있는 곳에 간단한 아이폰 애플리케이션을 만들고있다. 문제는 시뮬레이터의 키보드를 통해 처음 몇 개의 필드에 데이터를 추가 할 때입니다. 키패드는 팝업을 사용하여 실제 전화가 아닌 시뮬레이터를 사용하고 있습니다. 이제 키패드로 숨겨진 텍스트 입력란에 데이터를 입력 할 수 없습니다.아이폰 시뮬레이터에서 키패드를 제거하는 방법은 무엇입니까?

미안 내 질문은 바보 경우, 거기, 에 대한 바로 가기가 될하지만 난 새로운 오전과 내가 Google 검색 :

+0

의 중복 가능성 [아이폰 - 키보드가 텍스트 필드를 숨 깁니다] (http://stackoverflow.com/questions/2307200/iphone-keyboard-hides-textfield) – Vladimir

답변

0

시뮬레이터를 사용하여 물건을 찾을 수 없을 때 StackOverflow에 내 위로 옵션입니다 수 사용자 입력을 입력하기위한 키패드와 텍스트 필드를 위로 이동시켜 키패드가 텍스트 필드를 숨기지 않도록 코드를 작성합니다. 델리게이트를 텍스트 필드에 연결하십시오. 보기에서 한로드

{ 
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil]; 
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide:) name:UIKeyboardWillHideNotification object:nil]; 
} 

을 다음과 같은 방법

- (void) keyboardWillShow: (NSNotification*) aNotification 
{  
    int position = 0; 


    if ([txtfld1 isFirstResponder]) 
     position = 120; 
    else if ([txtfld2 isFirstResponder]) position = 120; 
    [UIView beginAnimations:nil context:NULL]; 
    [UIView setAnimationDuration:0.3]; 
    CGRect rect = [[self view] frame]; 
    rect.origin.y -= position; 
    [[self view] setFrame: rect]; 
    [UIView commitAnimations]; 

} 
- (void) keyboardWillHide: (NSNotification*) aNotification 

{ 
    int position = 0; 


    if ([txtfld1 isFirstResponder]) 
     position = 120; 
    else if ([txtfld2 isFirstResponder]) position = 120; 
    [UIView beginAnimations:nil context:NULL]; 
    [UIView setAnimationDuration:0.3]; 
    CGRect rect = [[self view] frame]; 
    rect.origin.y += position; 
    [[self view] setFrame: rect]; 
    [UIView commitAnimations]; 
} 
0

은 간단하게 ..에 textField 위임을 추가하고이 그 위임 방법

입니다 :

나는 위로 이동 및 아래로 이것을 사용하고

- (BOOL)textFieldShouldReturn:(UITextField *)textField 
    { 
     ["your Textfiled object Name" resignFirstResponder]; 
    } 

위의 모든 textFiled 설정. 키보드가 닫힙니다. 그리고 Textviews를 Scrollview에 보관하는 것이 좋습니다. 그것은 당신을 도울 것입니다

0

아마도 "안드로이드 에뮬레이터에서 키보드를 어쨌든 기각합니다 안드로이드에서"뒤로 버튼 "같은 것을 찾고 있습니다. iOS 시뮬레이터에는 바로 가기 나 버튼이 없습니다. 돌아 가기 버튼을 사용하여 키보드를 닫을 수 있습니다. 단, 먼저 코드에 UITextFieldDelegate을 연결해야합니다. Use this code 버튼을 눌러 "돌아 가기"버튼을 만듭니다.

0

또는 Attributes Inspector에서 RETURN 키 (DONE, GO ...)를 추가 할 수 있습니다.

0

나는이 문제를 해결하기 위해 다음과 같은 대답을 사용하고 있습니다. 이것이 정말로 도움이되기를 바랍니다. 당신은 단순히보기 controller.m 파일에이 코드를 사용

- (void)textFieldDidBeginEditing:(UITextField *)textField 
{ 
    [self animateTextField:textField up:YES]; 
} 


- (void)textFieldDidEndEditing:(UITextField *)textField 
{ 
    [self animateTextField:textField up:NO]; 
} 
관련 문제