Как отправить «отправителя» другому методу в задаче C

Я хочу сделать простую игру «Круг и крест».

Я поставил 9 кнопок, но подключил их к одному методу, поэтому, когда пользователь нажимает любую из них, заголовок кнопки меняется на X или O. Все кнопки имеют разные теги. Теперь я хочу отправить «отправителя» другому методу, чтобы проверить, является ли пользователь кругом или крестом.

    -(void) show: (enum gamer) aGamer andSender: (id) sender
{
    switch(aGamer)
    {
        case gCircle:
            [sender setTitle:[NSString stringWithFormat:@"%c",'o']];
            break;
        case gCross:
            [sender setTitle:[NSString stringWithFormat:@"%c",'x']];

            break;
    }
}

Проблема в том, что кнопка не меняет заголовок. Вот как я вызываю метод show, когда нажимаю кнопку.

[self show:aGamer andSender:sender];


person user3133543    schedule 06.01.2014    source источник
comment
Почему вы форматируете 'o' в NSString? Вместо этого вы можете просто использовать @"o".   -  person danielbeard    schedule 07.01.2014
comment
Пожалуйста, отредактируйте свой вопрос, включив в него весь код метода, вызывающего show:andSender:.   -  person Peter Hosey    schedule 07.01.2014


Ответы (1)


Вместо этого вы должны использовать setTitle:forState:. Например.

[sender setTitle:@"o" forState:UIControlStateNormal]

Вот ссылка на документ для UIButton: Ссылка

person danielbeard    schedule 06.01.2014
comment
Это только в Cocoa Touch. Согласно другому вопросу того же автора, они разрабатывают для OS X, поэтому используют Cocoa. - person Peter Hosey; 07.01.2014