почему мои заявления if пропускаются? - PullRequest
0 голосов
/ 08 февраля 2011

Итак, у меня есть метод, который я вызываю при нажатии одной из трех кнопок:

- (IBAction)saveNetwork:(id)sender
{
    NSString *networkEntered;

    if (sender == button1)
        networkEntered = @"button1";

    if (sender == button2)
        networkEntered = @"button2";

    if (sender == button3)
        networkEntered == @"button3";
        //more work...
}

проблема в том, что он никогда не достигнет третьего, если, независимо от того, что передается как отправитель. Я пробовал еще, если, еще и т.д ...

есть идеи, что происходит?

проблема не в том, как я передаю объекты-кнопки или что-то в этом роде, потому что если нажата кнопка1, она просто входит в if, но по какой-то причине она вообще никогда не проверяет последний.

Заранее спасибо за прочтение и помощь.

Ответы [ 4 ]

9 голосов
/ 08 февраля 2011

У вас есть сравнение == в третьем блоке if. Вместо networkEntered == @"button3"; вы, вероятно, захотите иметь networkEntered = @"button3";

Я ожидаю, что ваш третий, если блок вводится, просто не делает то, что вы ожидаете.

4 голосов
/ 08 февраля 2011

Что ж, учитывая эффект для третьего if, это сравнение на равенство, а не задание, неудивительно, что оно не работает ;)

networkEntered == @"button3";

Должно быть:

networkEntered = @"button3";

Разве это не опечатка при написании этого вопроса? :)

1 голос
/ 08 февраля 2011

networkEntered == @"button3"; должно быть networkEntered = @"button3";

0 голосов
/ 08 февраля 2011

Проверьте, не подключили ли вы действие Touch Up Inside к методу третьей кнопки.

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