屏幕适配:
CCSize VisibleSize =CCDirector::sharedDirector()->getVisibleSize();//可视大小;
CCSize WinSize =CCDirector::sharedDirector()->getWinSize();//窗口大小;
这两个值相等;
测试的时候可以用%g 来获取值;
让背景和屏幕大小一样;这种方法可能会让图片失真;
CCSprite * map = CCSprite::create(“bg”);
Map->setTextureRect(CCRectMak(0,0,winSize.wdith,winSize.height));
这时候可以用设置比例的方法来设置大小;
设置AppDelegate.cpp的屏幕适配;
CCDirector * pDirector =CCDirector::sharedDirector();
CCEGLView * pEGLView =CCEGLView::sharedOpenGLView();
pDirector->setOpenGLView(pEGLView);
pEGLView->setDeSignResolutionSize(480,800,kResolutionFixedHeight);//根据屏幕高来设置比例;
---这时候可能会导致图片有所缩减;多出的还是存在,只是不显示;
CCSprite * map = CCSprite::create(“bg”);
map1->setScale(VisibleSize.height/map1->getContentSize().height);
kResolutionExactFit:强制拉伸;会导致图片比例失真;
kResolutionNoBorder:等比例拉伸;会有一部分跑到屏幕外面去;
kResolutionShowAll:保持比例,全显示图片,会导致黑边;
kResolutionFixedHeight:固定高度;
kResolutionFixedWidth:固定宽度;
CCPoint origin =CCDirector::sharedDirector()->getVisibleOrigin();
Origin.x 获取的是图片的起始位置,0;
本文详细介绍了屏幕适配的概念,包括CCSizeVisibleSize和CCSizeWinSize的区别,如何让背景图像与屏幕大小一致,以及在不同分辨率设备上的适配方法,如设置比例、强制拉伸、等比例拉伸、保持比例全显示和固定高度/宽度等。通过调整`AppDelegate.cpp`中的屏幕适配设置,实现不同设备上的图像完美展示。

542

被折叠的 条评论
为什么被折叠?



