6

背景:

検索フィールドを持つイメージビュー (バーボタンではなく四角形) からポップオーバーを表示する必要があります。ポップオーバーは UIModalPresentationFormSheet から提示する必要があります。

問題:

私が直面している問題 (ランドスケープ モード) は、キーボードが表示されているときに、モーダル フォーム シートが上に移動し、それに伴ってポップオーバーのフレームが移動することです。したがって、ポップオーバーは元の位置 (キーボードが表示される前) にとどまり、 rect が上にシフトされます。私が適用した解決策は、変更された四角形から(using presentPopoverFromRect)のポップオーバーを表し、-(void)didShowKeyBoard:(NSNotification*) notifで同じことを行うことです。これは正常に-(void)didhideKeyBoard:(NSNotification*) notif機能しますが、遷移は非常に高速で弾力があります。では、これをスムーズに移行するにはどうすればよいでしょうか。

私が試したこと

私は試した :

[UIView beginAnimations:nil context:nil];
[UIView setAnimationCurve:UIViewAnimationCurveLinear];
[UIView setAnimationDuration:5.0f];
[_statePopover presentPopoverFromRect:stateHandler.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionUp animated:NO];
[UIView commitAnimations];

しかし、うまくいきませんでした。

誰かがこれを行う正しい方法を教えてもらえますか?
どんな助けでも大歓迎です。

4

1 に答える 1