2012-05-09 7 views
2

私は現在PayPalのモバイル決済ライブラリを使って商品の支払いを容易にするiosアプリを開発しています。問題は、Paypalがポートレート-Uprightモードに設定されたウェブビューを生成することです。これは私の知る限りではpayPalライブラリの内部で生成され、私はそれにアクセスするためにとにかく見ることができません。とにかく、私はほとんどの人がポートレートモードを使用していることがわかったいくつかの広範な検索の後に景観mode.AfterでテWebビューを回転させるには、それは景観に回転させるためにとにかくですか?PayPalウェブビューをランドスケープモードで回転させるにはどうしてですか?

答えて

3

実際には、iOSのpaypalのチェックボックスビューを手動で回転する方法があります。このビューはPayPalViewClassのインスタンスです。すべてのビューとすべてのサブビューを見て、このクラスのインスタンスを見つけるためのメソッドを追加するだけです。探していたビューを見つけたら、setTransformメソッドをそのビューに適用するだけです。 方法は次のように次のようになります。

-(void)cicle:(UIView *)aView { 
    for (UIView *_v in [aView subviews]) { 
     if ([_v isKindOfClass:[NSClassFromString(@"PayPalViewClass") class]]) { 
      [aView setTransform:CGAffineTransformMakeRotation(-M_PI/2)]; 
     } 
     [self cicle:_v]; 
    } 
} 

それはあなたのpayWithPayPalメソッドで呼び出す必要があります。

0

私は同じ問題を抱えています。 PayPalはルートビューコントローラではなくキーウィンドウにビューを追加しているため、デバイスの方向は無視されます。

例えば、ウィンドウに直接サブビューを追加するとき、横向きの問題を説明し、ここで多くの質問があります。 UIInterfaceOrientation always return Portrait in AppDelegate iPad?

私はPayPalのUIViewのをキャッチし、それを手動で回転しようとしているが、考え出したわけではありませんそれがまだ可能ならば。

0

Paypalライブラリv1.6.0の場合、PayPalViewClassはアプリケーションのメインwindowのビュー階層にあります。

  1. @alexで提供されているメソッドを呼び出して、アプリケーションのデリゲートウィンドウに渡すだけで済みます。
  2. ウィンドウを取得するには[[[UIApplication sharedApplication] delegate] window]で十分です。
  3. -advancedCheckoutWithPayment:または-checkoutWithPayment:に電話した後に電話をかけてください。

すべての向きを許可する場合は、PayPalViewClassをデバイスの向きに合わせて変換する必要があります。

関連する問題