2015-11-25 3 views
0

Я хочу отключить действие кнопки при определенных условиях. Чтобы быть более ясным, я разрабатываю страницу входа, но я хочу отключить действие кнопки входа в систему. Действие - это segue, который я создал, используя drop & drag way. Вопрос: Как отключить этот сеанс, когда имя пользователя и пароль недействительны. Или это можно сделать таким образом?Как отключить действие кнопки при определенных условиях

Если это невозможно, какой способ является наиболее приемлемым для программной реализации segue в этой ситуации?

+0

Что у пробовали? – iAnurag

ответ

1

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

Вы должны отключить SEGUE от кнопки (удалить SEGUE) и снова от LoginController к nextController и добавить идентификатор для Segue ("nextFlowId"). А затем добавить действие к кнопке (loginAction)

Пример:

@IBAction func loginAction(sender: AnyObject) { 
     if yourCondition { 
      //message and return 
      return 
     } 

     self.performSegueWithIdentifier("nextFlowId", sender: nil) 
    } 
+0

вы получили мой вопрос хорошо, но я не нашел, как подключить два монитора зрения непосредственно из viewcontroller? – Faruk

+0

Сделал это. Спасибо за помощь @disepulv – Faruk

+0

У меня есть еще один вопрос. Могу ли я использовать данные с помощью этого метода? – Faruk

0

Добавьте этот метод в свой диспетчер просмотра. Затем сначала проверьте свое имя пользователя и пароль после возврата YES.

-(BOOL)shouldPerformSegueWithIdentifier:(NSString *)identifier sender:(id)sender { 

} 

Или, я думаю, вы можете добавить касание внутри действия кнопки входа. Затем нажмите на ViewController вручную

0

От UIKit Framework Reference Apple:

userInteractionEnabled

Логическое значение, которое определяет, игнорируются и удаляются из очереди событий пользовательские события.

Обсуждения

При установке на NO, пользовательские события - такие, как прикосновение и клавиатура - предназначенная для представления игнорируются и удаляются из очереди событий. Если установлено значение YES, события доставляются на экран в обычном режиме. Значением по умолчанию этого свойства является ДА.

UIButton наследует это имущество от UIView. Таким образом, вы можете установить

aButton.userInteractionEnabled = false