2012-03-26 21 views
4

いくつかの入力フィールドを含むpopoverを使用しています。 iOSキーボードは大画面領域をカバーしているので、ポップアップの位置を修正する必要があります(ターゲットを移動して-presentPopoverFromView:targetViewpopoverに呼び出すことによって)。私は、ポップアップの表示矩形を正確に特定することはできませんが、矢印の方向とコンテンツのサイズを持っていると仮定して、現在の位置を近似することができます。ポップオーバーの矢印の方向を特定できません

ポップアップがはっきりと見える場合でも、私は常に不明な方向(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にアップデートした後、問題は完全に消えました。

+0

問題を解決した場合は、回答を投稿して受け入れたとマークするので、質問に回答がないようには見えません。 – Greg

+0

@ PartiallyFinite、ありがとう。学習中... – Greg

答えて

0

私は自分のデバイス(iPad)にiOS 5.0.1をインストールしました。コンパイルの対象は5.1です。デバイスを5.1にアップデートした後、問題は完全に消えました。

関連する問題