Cocos2D - заправка спрайта - PullRequest
       5

Cocos2D - заправка спрайта

0 голосов
/ 22 ноября 2011

UIImageViews имеют свойство под названием contentMode, которое вы можете использовать как

imageView.contentMode = UIViewContentModeScaleAspectFit;

, и оно заполнит весь вид вашим изображением без искажения, даже если онопрокачайте изображение, чтобы сделать это.

Есть ли похожие вещи на Cocos2D?Извините за вопрос, но я новичок в Cocos2d.

Я создаю спрайт так:

CCTexture2D *textBack = [[CCTexture2D alloc] initWithImage:image];
CCSprite *sprite = [CCSprite spriteWithTexture:textBack];

спасибо.

Ответы [ 2 ]

2 голосов
/ 22 ноября 2011

Эквивалентным методом для выполнения UIViewContentModeScaleAspectFit будет свойство .scale . При первом создании CCNode (или любого из подузлов, таких как CCSprite и т. Д.) Свойство scale равно 1. Продолжайте увеличивать его, чтобы пропорционально масштабировать спрайт.

sprite.scale = 2.0f; // Scales the sprite proportionally at a factor of 2

Что касается подгонки под определенный размер, вам нужно написать подпрограмму:

  1. Передайте желаемый прямоугольник и прямоугольник ограничительной рамки CCSprite.
  2. Масштабировать прямоугольник прямоугольника, чтобы аспект соответствовал желаемому прямоугольнику.
  3. Возвращает коэффициент масштабирования

Результат может быть применен к свойству CCSprite.scale.

1 голос
/ 22 ноября 2011

Вы, конечно, можете масштабировать спрайт, чтобы сделать это ...

sprite.scale  = ?
sprite.scaleX = ?
sprite.scaleY = ?

но я не верю, что есть функция для автоматического заполнения всего экрана. Если вы не получили здесь однозначного ответа, я бы предложил разместить его на форумах Cocos2D (http://www.cocos2d -iphone.org / forum / ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...