Почему CCMenuItemImage с блоками вызывает неправильный блок на ощупь? - PullRequest
0 голосов
/ 06 сентября 2011

Касаясь моей кнопки _follow, запускается блок ^ для кнопки _learn. Похоже, что он запускает неправильный блок, потому что это анонимный или неназванный блок. Я пытался назвать это, но не могу понять это правильно. Кто-нибудь еще сталкивался с этой проблемой? Или знаете синтаксис для правильного именования блоков, чтобы мои кнопки не перепутали?

_learn= [CCMenuItemImage itemFromNormalImage: _learnButtonPath selectedImage:             _learnButtonPath disabledImage:_learnButtonPath block:^(id sender)
{
    NSLog(@"Learn Button has been touched!");
    ...
}
_follow= [CCMenuItemImage itemFromNormalImage: _onFollowButtonPath selectedImage: _onFollowButtonPath disabledImage:_offFollowButtonPath block:^(id sender)
 {
    NSLog(@"FollowButton has been touched!");
    ...
}

1 Ответ

0 голосов
/ 07 сентября 2011

Я сделал ошибку, добавив NSLog в CCMenu.itemForTouch, не добавляя фигурную скобку, которая вызвала его срабатывание при первом обнаруженном элементе меню.

Для тех, кто заинтересован, вот что я сделал

if( CGRectContainsPoint( r, local ) )

NSLog(@"User Touch\tccp(%.0f,%.0f)",local.x,local.y); //touch log

return item;

Исправлено с помощью фигурной скобки ... глупый я:)

if( CGRectContainsPoint( r, local ) )
        {
            NSLog(@"User Touch\tccp(%.0f,%.0f)",local.x,local.y);       //touch log
            return item;
        }
...