2013-06-28 3 views
1

Я новичок в разработке игр для Android. У меня возникла проблема с настройкой изображений на все размеры экрана для Android.
Технология Я использую cocos2d андроид библиотеки для разработки игры.Как отрегулировать изображения для всех устройств экрана Android, используя библиотеку android для cocos2d, не используя xml-макет для разработки игр

В настоящее время работает код: -

if(winSize.width>1250 && winSize.height>700) 
    { 
     background = CCSprite.sprite("bg480X800.png"); 

     float scalexx=winSize.width/background.getContentSize().width; 
     float scaleyy=winSize.height/background.getContentSize().height; 

     background.setScaleX(scalexx); 
     background.setScaleY(scaleyy); 
     //background.setScale(1.65f); 

    } 
    /* *************************1000-1250 ********************** */ 
    else if(winSize.width<1250 && winSize.width>1000) 
    { 
     background = CCSprite.sprite("bg7.png"); 

     float scalexx=winSize.width/background.getContentSize().width; 
     float scaleyy=winSize.height/background.getContentSize().height; 

     background.setScaleX(scalexx); 
     background.setScaleY(scaleyy); 
     //background.setScale(1.0f); 
    } 
    else 
    { 
     background = CCSprite.sprite("bg480X800.png"); 

     //background.setScale(1.0f); 
     float scalexx=winSize.width/background.getContentSize().width; 
     float scaleyy=winSize.height/background.getContentSize().height; 

     background.setScaleX(scalexx); 
     background.setScaleY(scaleyy); 

    } 

Пожалуйста, скажите мне, если вы знаете лучше и смарт-кодирования, что настроить для всех размеров экрана

ответ

0
CGSize winSize = CCDirector.sharedDirector().displaySize(); 

CCSprite background=CCSprite.sprite("background.png"); 

background.setScaleX(winSize .width/background.getTexture().getWidth()); 
background.setScaleY(winSize.height/background.getTexture().getHeight()); 
background.setPosition(CGPoint.make(winSize.width/2, winSize.height/2)); 
addChild(background); 

с точным, то, что размер экрана