2014-12-08 2 views
0

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

Прямо сейчас это, как я пытаюсь сделать так:

while(true) 
{ 
    if button1pressedbool and button2pressedbool 
    { 
     break 
    } 
    usleep(20000) 
} 

[self doMethodNowThatButtons1&2arePressed] 

мне нужно для пользователя, чтобы выбрать другую кнопку, прежде чем продолжить в этом методе, есть лучший способ сделать это?

Редактировать: Пользователь ... ответ выглядит правильно, есть ли у кого-нибудь пример кода использования и проверки селектора, как он предложил?

ответ

1

Существует намного лучший способ сделать это.

Набор Button1 тега в 0 и button2 тега 1.

button1.tag = 0; 
button2.tag = 1; 

Затем установите действие для обеих кнопок для одного селектора.

В этом методе отметьте тег кнопки (используйте отправитель). Если тег == 0 установил BOOL button1Написано на YES. Сделайте то же самое для другой кнопки.

Этот способ, независимо от того, какую кнопку вы нажимали первым, когда button1Pressed == YES && button2Pressed == YES вы можете делать все, что хотите.

+0

Извините, что я новичок в OBJ-c, как установить действие для кнопки? –

+1

@objectivelyC ​​https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIControl_Class/index.html#//apple_ref/occ/instm/UIControl/addTarget:action:forControlEvents: – user4333351