2012-05-02 3 views
1

я пытаюсь установить текстуру с этим:набора текстуры спрайта не работают

[[self setSpriteByTag] setTexture:[[CCTextureCache sharedTextureCache] addImage:[NSString stringWithFormat:@"%@0001.png",face]]]; 

когда [self setSpriteByTag] возвращает спрайт face является строкой изображения, и они оба хорошо, потому что я вошли их.

спрайта является потомок страницы в ccscrolayer: одна страницы из страниц слоя:

CCLayer *page1 = [[CCLayer alloc] init]; 
     BACK.position=ccp(screenSize.width/2,screenSize.height/2); 
     [page1 addChild:BACK]; 

, когда я пытался изменить образ BACK «s, с помощью команды я писал здесь. Что случилось, я вижу белый экран. У меня есть проверка, что изображение в моих активах.

В чем проблема? the facr, что я изменяю спрайт, который является дочерним элементом страницы?

редактировать:

это функция, которая дает мне спрайтов НАЗАД:

-(CCSprite*)setSpriteByTag 
{ 

    int currentPage=[scroller currentScreen]; 
    [globals sharedGlobals].currentPageG=currentPage; //move to touch ended? 
    currentPage=currentPage+1; 
    //NSLog(@"PAGE:%d",currentPage); 



    if(currentPage==1) 
    {[globals sharedGlobals].WhatFace [email protected]"BeastFace"; return BACK;} 
    else if(currentPage==2) 
    {[globals sharedGlobals].WhatFace [email protected]"BlueFace"; return BACK1;} 
    else if(currentPage==3) 
+0

Что такое Назад? Пожалуйста, подробно изложите структуру кода. Вы зададите вопрос в течение нескольких минут. M не может понять, что вы хотите сделать. Я сделал это много раз. –

+0

@ Nikhil Aneja back - это спрайт i написал, что он загружен на страницу скроллера и имеет начальное изображение, которое я хочу изменить. – user1280535

ответ

0

Он получает белый только в том случае, когда изображение нет в ресурсах .. Я проверил работает так же код .. Он отлично работает .. Если я поместил неправильное имя изображения, которого нет. Он меняется на белый ... Пожалуйста, проверьте изображение

[NSString stringWithFormat:@"%@0001.png",face] 

M уверен, что проблема заключается в имени образа .. :)

+0

изображение есть. наверняка ! я пробовал много изображений, я записал команду, которую вы здесь написали, изображение хорошее. вы пробовали его с помощью скроллера? Я меняю скроллер. см. мое редактирование, пожалуйста. – user1280535

+0

Этот спрайт - это ребенок слоя ... это часть CCScrollerLayer .. ?? Правильно? –

+0

Можете ли вы написать код метода setSpriteByTag? –

0
[NSString stringWithFormat:@"%@0001.png",face] 

Ваши имена будут иметь формат «xxxxx0001.png». Предполагая, что переменная лица является строкой «BeastFace», тогда имя файла для загрузки будет «BeastFace0001.png».

До сих пор очевидно, что файл «Beastface0001.png» не загружается на устройство, и ни один из них не будет «beastface0001.png», поскольку устройства iOS используют файловую систему с учетом регистра. Однако он будет работать на симуляторе iOS.