2012-03-10 11 views
11

में काम नहीं कर रहा है, मैं एक गेम बना रहा हूं जिसमें मुझे अपनी ऐप ऑन डिवाइस (आईफोन 4) का परीक्षण करने पर समस्या का सामना करना पड़ रहा है, इसकी पृष्ठभूमि काम नहीं कर रही है। जब पृष्ठभूमि छवि समाप्त होती है तो ब्लैकिश पृष्ठभूमि रंग आता है। मेरी पृष्ठभूमि छवि आकार 460X2880 है, चित्र नाम (iPhone4 के लिए) "mars_sample.jpg" और पृष्ठभूमि स्थानांतरण के लिए कोड है:"पृष्ठभूमि मोडिंग" कोड आईफोन 4 एस

-(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" जैसा है, तो यह पृष्ठभूमि में छवि लोड करता है लेकिन स्क्रीन के शीर्ष पर ब्लैकिश पृष्ठभूमि रंग दिखा रहा है।

एक कोड के नीचे पृष्ठभूमि छवि स्थापना के लिए है:

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]; 
} 

कृपया मुझे कुछ सुझाव दें, यह कैसे काम करेंगे। धन्यवाद सभी

सादर,

तौसीफ खान

+0

आईफोन 480 पीएक्स उच्च (स्टेटस बार के बिना) पर स्क्रीन नहीं है - क्या स्क्रीन के शीर्ष पर ब्लैकिश पृष्ठभूमि है? यदि नहीं, तो कृपया अपने प्रश्न में एक स्क्रीनशॉट जोड़ें :) – deanWombourne

+0

ये स्क्रीन शॉर्ट के लिए लिंक हैं, वास्तव में मुझे समस्या का सामना करना पड़ रहा है !!! http://www.mediafire.com/?s9dh63n3pv3znil http://www.mediafire.com/?lfdxxrclo365ozj – NSExpression

उत्तर

2

चेक background.position = ccp(0, bk_f)backgroundmoving में आप एक निश्चित मूल्य, bk_f के समन्वय की Y मान सेट कर रहे हैं। मुझे लगता है कि यह एक्स मान है जिसे आप पृष्ठभूमि छवि को स्क्रॉल करने के लिए बदलना चाहते हैं, background.position = ccp(bk_f, 0)

पैरामीटर dt से backgroundmoving जो मुझे लगता है कि एक चलती पृष्ठभूमि छवि प्रदान करने के लिए उपयोग नहीं किया जाता है।

सुनिश्चित करें कि पृष्ठभूमि दृश्य ऑटोसाइज गुणों का उपयोग करके अपने सुपर व्यू को फिट करने के लिए विस्तारित करने के लिए सेट किया गया है।

अपने पृष्ठभूमि दृश्य की फ्रेम प्रॉपर्टी में मूल की जांच करें - जांचें कि यह आपकी स्क्रीन के शीर्ष पर है।

मैं आपकी पृष्ठभूमि 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); 
    } 


}