Как сделать так, чтобы спрайты помещались на весь экран более чем одного устройства

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

1 ответ

Решение

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

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
Другие вопросы по тегам