2011-12-16 2 views
0

私は単純なiPhoneアプリケーションを作っています。私はシミュレータで、私のキーボードを介して、これらの最初のいくつかのフィールドにデータを追加していたときに 問題があり、 キーパッドはまた、私は、私はまだシミュレータではない、実際の携帯電話を使用していますようタイピングのために使用していないアップをポップ。 今、キーパッドによって隠されたテキストフィールドにデータを入力することはできません。iPhoneのシミュレータでキーパッドを取り除くにはどうすればいいですか?

私の質問は愚かである場合は、そのためのショートカットがあるかもしれません申し訳ありません

、 しかし、私はGoogleの検索で物事を見つけることができないとき、私は新しいですし、StackOverflowのが私の唯一の背中のオプションです:)

+0

の可能重複[iPhoneは - キーボードは、TextFieldを隠す](http://stackoverflow.com/questions/2307200/iphone-keyboard-hides-textfield) – Vladimir

答えて

0

、あなたのシミュレータを使用しますユーザ入力を入力するためのキーパッドと、テキストフィールドを上に移動させるためのコードを書き込んで、キーパッドがテキストフィールドを隠さないようにする。代理人をテキストフィールドに接続します。 、ビューでやった負荷

{ 
    [[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

は、単に..テキストフィールドのデリゲートを追加し、これは、デリゲートメソッド

IS:

私は移動するとダウンこれを使用しています

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

は、上記のあなたのすべてのtextFiledように設定します。あなたのキーボードは解散されます。私はあなたのテキストフィールドをスクロールビューに保存することをお勧めします。それはおそらく、どのような場合にはAndroidのエミュレータ上でキーボードを閉じるアンドロイドの「戻るボタン」、のようなものを探しているあなた

0

に役立ちます。 iOSシミュレータでは、ショートカットやそのようなボタンはありません。戻りコードでキーボードを閉じることはできますが、最初にコードにUITextFieldDelegateを接続している場合に限ります。 Use this codeあなたの戻るボタンを "仕事"にします。

0

Alternativlyあなたは属性インスペクターから(DONE、GO ...)RETURNキーを追加することができます。

0

私はこの問題を解決するために次の回答を使用しています。これが本当に役立つことを願っています。 あなたは単にあなたのビューcontroller.mファイルにこのコードを使用して

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


- (void)textFieldDidEndEditing:(UITextField *)textField 
{ 
    [self animateTextField:textField up:NO]; 
} 
関連する問題