2016-06-28 9 views
0

Я работал с короной для нескольких, и я хотел знать, как сделать спрайт (используя упаковщик текстур) и установить его в качестве фона моего приложения. Я также хочу, чтобы он соответствовал как можно большему количеству устройств без какого-либо из содержимого спрайта. Короче говоря, я хочу спрайт быть фон установки на весь экран без потери содержимого спрайтаКак сделать спрайты подходящими для всего экрана более чем одного устройства

ответ

0

Я надеюсь, что это поможет вам:

local _W = display.actualContentWidth 
local _H = display.actualContentHeight 

local bg = display.newImage('bg.jpg') 
bg.x, bg.y = display.contentCenterX, display.contentCenterY 


local mode = 'inside' 

-- the image will fill the device width/height exactly 
if mode == 'stretch' then 
    bg.width, bg.height = _W, _H 

-- the image will be scaled proportionally to fit inside the device width/height 
elseif mode == 'inside' then 
    local scale = math.min(_W/bg.width, _H/bg.height) 
    bg:scale(scale, scale) 

-- the image will be scaled proportionally to completely fill the area, 
-- allowing portions of it to exceed the bounds defined by device width/height 
elseif mode == 'outside' then 
    local scale = math.max(_W/bg.width, _H/bg.height) 
    bg:scale(scale, scale) 
end 
+0

Спасибо за ответ. Не могли бы вы объяснить свой код, чтобы я понял, что он делает? –

+0

Загрузите изображение (bg.jpg) и установите его в центральное положение. Измените режим и просмотрите результаты («растянуть», «внутри» или «снаружи»): - растянуть: изображение точно заполнит ширину/высоту устройства; - внутри: изображение будет масштабироваться пропорционально по ширине и высоте устройства; - снаружи: изображение будет масштабироваться пропорционально, чтобы полностью заполнить область, позволяя ее части превышать границы, определяемые шириной/высотой устройства. –

+0

@White_tiger Вы решили проблему? –