2012-01-04 2 views
1

У меня есть кнопка «Отправить» и кнопка, которая переключает между «Правка» и «Отмена». Как я могу вернуть кнопку «Отмена», чтобы вернуться к «Редактировать», когда я нажимаю кнопку «Отправить»? Если я нажму «Отмена», то кнопка будет переключиться на «Изменить».iOS: есть ли способ нажатия на кнопку, чтобы она нажала еще одну кнопку?

Это то, что у меня есть, и оно не работает.

- (IBAction)submitClicked:(id)sender { 
    [submitButton resignFirstResponder]; 
    if (inEditMode) 
     [editButton setClicked:YES]; 
    ... 
} 

- (IBAction)editClicked:(id)sender { 
    if (inEditMode) 
    { 
     inEditMode = NO;   
     ... 
     [sender setTitle:@"Edit" forState:UIControlStateNormal]; 
    } 
    else 
    { 
     inEditMode = YES;   
     [sender setTitle:@"Cancel" forState:UIControlStateNormal]; 
    } 
    [editButton resignFirstResponder]; 
} 

Спасибо, Джон

+0

Зачем отправлять отправителю сообщение, когда вы можете сделать его ivar и получить к нему доступ напрямую? Затем вы можете сделать свои звонки с помощью setTitle с немного большей безопасностью. – CodaFi

ответ

1

То, что вы хотите сделать, это вызвать селектор - (IBAction) editClicked:(id) sender в симулировать кнопку редактирования нажмите, когда кнопка нажата представить. Ваш код должен представить щелкнул выглядеть следующим образом:

- (IBAction)submitClicked:(id)sender { 
     [submitButton resignFirstResponder]; 
     if (inEditMode) 
      [self editClicked:editButton]; 
      ... 
    } 

Обратите внимание, что вы должны передать в кнопке редактирования как-то, так и быть немного осторожным, так как метод editClicked использует как sender и editButton. Возможно, вам захочется рассмотреть последовательно использование той же переменной, что и @CodaFi в комментарии.

+0

Извините за задержку - я заболел гриппом. Я сделал ваше изменение, и код делает все, что я хочу **, кроме ** изменения заголовка на editButton. Благодарю. –

Смежные вопросы