2011-04-15 15 views
0

こんにちは皆私は私の英語のために私をスクーニーズしています。私の問題は、私がポートレートモードで画面上にボールをアニメートしていることですが、今は風景モードで同じことをしたいのです。すべてがうまくいきますが、ボールがiPhoneの側面に当たったら、それは通り抜けます。このコードは動作しません。問題はxとyについてだと思います。xcodeアニメーションボールiphone問題の風景モード

if (ball1.center.x > 480 ||ball1.center.x < 0){ ajout.x = -ajout.x; } if (ball1.center.y > 320 ||ball1.center.y < 0){ ajout.y = -ajout.y;

答えて

0

はい、あなたの問題は、xとyです。ポートレートモードでは、xが480、yが320であることが正しいですが、ランドスケープでは2つの値が逆になります。

代わりにこのコードを試してください。

CGRect _frame = [[UIScreen mainScreen] bounds]; 

if (ball1.center.x > _frame.size.width || ball1.center.x < 0) 
    ajout.x = -ajout.x; 

if (ball1.center.y > _frame.size.height || ball1.center.y < 0) 
    ajout.y = -ajout.y; 

これはあなたの画面(ポートレートでは320×480、風景の中に480x320)のproperyの境界を返し、それらの値に対してチェックする必要があります。

乾杯。

+0

私はこれを行いましたが、ポインタ型に変換できないことを示しています。 –

+0

コードを少し修正しました。それが動作するかどうかを確認します。 –

+0

いいえうまくいきません –

関連する問題