10

UIView の一部が iPad のキーボードを覆っています。

ここに画像の説明を入力

表示されているビューは、メイン ビューにサブビューとして追加した単なる UIView です。キーボードが表示されたら、ビューを上にシフトします。

誰もこれを見たことがありますか?

編集

キーボードが表示されたら、ビューを上に移動します。

[UIView animateWithDuration:SHOW_KEYBOARD_ANIMATION_DURATION animations:^{
    CGRect frame = self.currentViewController.view.frame;
    frame.origin.y -= SHOW_KEYBOARD_OFFSET;

    self.currentViewController.view.frame = frame;
}];

編集

ビューを追加するには、次のコードを使用します。

[UIView transitionFromView:fromView toView:toView duration:0.3f options:UIViewAnimationOptionTransitionCrossDissolve completion:nil];
4

2 に答える 2

1

キーボードが表示される前または後にビューを移動するコードを呼び出していますか? つまり、UIKeyboardWillShowNotification または UIKeyboardDidShowNotification に登録していますか?

キーボードのサイズをどこで取得しているのかわかりませんか? Apple のサンプル コードをもう一度見てみましょ。キーボードの下。

于 2012-05-23T03:42:36.507 に答える
1

SHOW_KEYBOARD_OFFSET はどこから取得していますか? それが問題だと思います。

ケイトが言ったように、通知をキャッチし、通知からの userInfo を使用して、ビューを移動する方法を検討する必要があります。ハードコードされた値は、Apple がキーボードのサイズを 2 番目に変更すると壊れます。要するに、フレームワークが簡単に教えてくれることを仮定しないでください。

于 2012-08-02T21:48:40.993 に答える