2012-03-10 8 views
11

私は自分のアプリケーションをデバイス(iPhone4)でテストしたときに問題が発生しています。その背景は機能していません。背景画像が終わるときのようにBLACKISH BACKGROUND COLORが来ます。私の背景画像のサイズは460X2880で、イメージ名(iPhone4のための)「mars_sample.jpg」とバックグラウンド移動するためのコードは次のとおりです。iPhone4Sで "BackgroundMoving"コードが動作しない

-(void)backgroundmoving:(ccTime)dt 
{  
    static float bk_f=0.0f; 

    bk_f -=0.9; 
    if (bk_f <= -960*3) {bk_f=0;} 
    background.position = ccp(0,bk_f);  
} 

私は背景画像として「460X2880」サイズの画像をロードしています、それはロードしません背景に「460X1192」のサイズであれば背景に画像が読み込まれますが、黒い背景には色が画面の上に表示されます。 1つのコードの下

は、背景画像を設定するためのものである:

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { 
    background = [CCSprite spriteWithFile:@"staripad.png"]; 
    background.anchorPoint= ccp(0,0); 
    [self addChild:background z:0]; 
} else { 
    background = [CCSprite spriteWithFile:@"mars_sample.jpg"]; 
    background.anchorPoint= ccp(0,0); 
    [self addChild:background z:0]; 
    [self schedule:@selector(backgroundmoving:) interval:1/30]; 
} 

は、それがどのように機能するか、私にいくつかの提案をお願いします。 おかげALL

よろしく、

Tauseefカーン

+0

は、iPhoneの480px(ステータスバーなし)の画面ではありません - 画面上部のBLACKISHの背景ですか?そうでない場合は、あなたの質問にスクリーンショットを追加してください:) – deanWombourne

+0

これは、スクリーンショートのリンクです。正確には何が問題に直面しているのですか? http://www.mediafire.com/?s9dh63n3pv3znil http://www.mediafire.com/?lfdxxrclo365ozj – NSExpression

答えて

2

チェックbackground.position = ccp(0, bk_f)backgroundmovingにあなたが固定値、bk_fに座標のY値を設定しています。私はそれがあなたが背景画像をスクロールするために変更したいと思うX値であると仮定します。background.position = ccp(bk_f, 0)

動いている背景画像を提供すると仮定したパラメータdtbackgroundmovingは使用されていません。

autosizeプロパティを使用して、スーパービューに収まるように背景ビューが拡張するように設定されていることを確認してください。

背景ビューのフレームプロパティの原点を調べます。画面の上部にあることを確認します。

私はあなたのバックグラウンドUIImageViewの背後にあるプレーンなUIViewを追加し、その色を緑色またはその他の厳しい色に設定します。そうすれば、あなたは視野で覆われた不動産を視覚的に確認することができます。

+0

いいえ、私は自分の背景をレイアウトするためにXIBを使用しませんでした。私が質問したところで私が提供したコードを参照してください。それは背景と問題を移動しています私はバックグラウンドが移動を開始するいくつかの秒後に直面しています。 – NSExpression

+0

実際に私はポートレートモードで自分のバックグラウンドを移動しています。私が提供した画面のショートカットのリンクをご覧ください。 (mediafire.com/?s9dh63n3pv3znilとmediafire.com/?lfdxxrclo365ozj)。ここで背景は上から下に移動しています。 私はこのような条件を与えました: background.position = ccp(0、bk_f) これ以上の説明が必要な場合は、私にお知らせください。ありがとう、あなたの返信を待っている – NSExpression

1
//in .h file int bk_f=240; 

-(void)backgroundmoving:(ccTime)dt 
{  

    bk_f=bk_f-5;  
    if(bk_f<=0) 
    { 
     background.position = ccp(240,160); 
     bk_f=240; 
    } 
    else 
    { 
     background.position = ccp(bk_f,160); 
    } 


} 
関連する問題