У меня есть UISwitch
, который определен в файле .xib.Событие, к которому я подключен, - «Значение изменено».
Я хочу следующее поведение (по сути, предупреждение пользователя о том, что эта функция доступна в полной версии программного обеспечения):
- разрешить пользователю нажимать на переключатель
- предотвращать скольжение переключателя в положение «включено» (я хочу, чтобы переключатель оставался в положении «выключено»)
- показывать предупреждение
Пока я не могу заставить 2 работать.Прямо сейчас у меня есть клудж.Я заставляю переключатель возвращаться в положение ВЫКЛ:
[self.switchButton setOn:NO animated:NO];
UIAlertView *alert = [[[UIAlertView alloc] initWithTitle:@"Feature unlocked in Full Version" message:nil delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil] autorelease];
alert.tag = ALERT_TAG;
[alert show];
Проблема в том, что вы видите, как переключатель перемещается в положение ВКЛ, затем он переходит в положение ВЫКЛ, а затем вы видите окно предупреждения.
Есть ли способ перехватить поведение, чтобы переключатель не переместился в положение ON?
ОБНОВЛЕНИЕ
Я пыталсясвязать с событием "TouchUpInside" и переместить туда мой код предупреждения.Пока еще недостаточно рано, чтобы перехватить визуальное изменение состояния переключателя.