как подчеркнуть / изменить цвет пункта меню? - PullRequest
1 голос
/ 11 января 2011

Я использую этот код для создания меню и пунктов меню. Что я хочу сделать, это когда я щелкаю элемент anymenu, он должен быть подчеркнут, показывая, что мой текущий выбор - это или меняет цвет ...

Мой код ..

CCMenuItem *AutoFire1 = [CCMenuItemFont itemFromString:@"Auto" target:self selector:@selector(AutoFire:)];

    CCMenu *menu = [CCMenu menuWithItems:AutoFire1, nil];
    menu.position = ccp(170, 100);

//  [menu alignItemsVerticallyWithPadding:10];

    [self addChild:menu];


    CCMenuItem *MaunualFire1 = [CCMenuItemFont itemFromString:@"Maunal" target:self selector:@selector(MaunalFire:)];

    CCMenu *menu2 = [CCMenu menuWithItems:MaunualFire1, nil];
    menu2.position = ccp(300, 100);

    //  [menu alignItemsVerticallyWithPadding:10];

    [self addChild:menu2];

и функция, которая работает на ощупь здесь:

  -(void) AutoFire: (id) sender 
    {
AutoFire=1; //Underline menuitem or change color to show current selection...
     }
     -(void) MaunalFire: (id) sender
    {
AutoFire=0;
}

Справка

1 Ответ

2 голосов
/ 11 января 2011

Сделайте CCMenuItem *AutoFire1 и CCMenuItem *MaunualFire1 переменные экземпляра вашего слоя.

В вашем методе, когда они нажимаются, измените их соответственно, чтобы делать то, что вы хотите, чтобы они делали.

Я не могу вспомнить, что это за код, чтобы изменить цвет CCMenuItemFont, но вы бы сделали что-то вроде

   -(void) AutoFire: (id) sender 
    {
    AutoFire=1;
    AutoFire1.color = ccc3(r,g,b);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...