いくつかの入力フィールドを含むpopover
を使用しています。 iOSキーボードは大画面領域をカバーしているので、ポップアップの位置を修正する必要があります(ターゲットを移動して-presentPopoverFromView:targetView
をpopover
に呼び出すことによって)。私は、ポップアップの表示矩形を正確に特定することはできませんが、矢印の方向とコンテンツのサイズを持っていると仮定して、現在の位置を近似することができます。ポップオーバーの矢印の方向を特定できません
ポップアップがはっきりと見える場合でも、私は常に不明な方向(UIPopoverArrowDirectionUnknown
)になっています。
iOS 5.1のUIKit.frameworkのヘッダファイルUIPopoverController.h
では、popover arrow
(上、下、左、右、不明のいずれか)の現在の方向を取得できることがわかります。唯一の条件は、popover
を提示する必要があるということです。
/* Returns the direction the arrow is pointing on a presented popover. Before presentation, this returns UIPopoverArrowDirectionUnknown.
*/
@property (nonatomic, readonly) UIPopoverArrowDirection popoverArrowDirection;
ポップオーバーがゲッターisPopoverVisible
が提示されている場合我々は判断することができます。
/* Returns whether the popover is visible (presented) or not.
*/
@property (nonatomic, readonly, getter=isPopoverVisible) BOOL popoverVisible;
しかし、私はポップオーバーの矢印が上を目指すか、ダウンなどを見ることができるにもかかわらずとmyPopover.isPopoverVisible == YES
、矢印の方向がまだありますmyPopover.popoverArrowDirection == UIPopoverArrowDirectionUnknown
。
[self presentPopoverFromRect:sourceView.frame inView:sourceView.superview
permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
EDIT(ソリューション)私はiOSの5.0.1は私のデバイス(iPadの)にインストールしていた
:
popover
はによって提示されます。コンパイルの対象は5.1です。デバイスを5.1にアップデートした後、問題は完全に消えました。
問題を解決した場合は、回答を投稿して受け入れたとマークするので、質問に回答がないようには見えません。 – Greg
@ PartiallyFinite、ありがとう。学習中... – Greg