У меня есть представление настроек в моем приложении, в котором есть несколько кнопок (на самом деле UISwitches). Если выбрано значение "off" на одном из переключателей, я хотел бы сразу скрыть второй переключатель. Это можно сделать?
IOS/iPhone-Скрытие одной кнопки при нажатии другой кнопки
Ответ 1
IBOutlet UIButton *btn1;
IBOutlet UIButton *btn2;
напишите выше 2 строки в вашем .h файле и установите розетки с помощью XIB.
Теперь создайте метод hideButton
-(IBAction)hideButton
{
btn1.hidden = YES;
}
в XIB присоедините этот метод с помощью btn2
.
Итак, теперь, когда вы нажимаете btn2
, он будет скрывать btn1
.
Ответ 2
Подключите два коммутатора к розеткам. скажем, switch1 и switch2.
Подключите эту функцию к действию valueChanged.
- (IBAction)mySwitch1:(id)sender {
[switch2 setHidden:!(switch1.isOn)];
}
Теперь, когда switch1 не включен, switch2 будет скрыт.
Ответ 3
Добавьте цель к первому переключателю, который при изменении значения вызывает экземпляр второго переключателя и скрывает его.
Добавьте цель:
[switch1 addTarget:self action:@selector(switchToggled:) forControlEvents: UIControlEventValueChanged];
Вызывает этот метод:
- (void) switchToggled:(UISwitch*)switch {
if ([switch isOn]) switch2.hidden = YES;
else switch2.hidden = NO;
}
Функция NJones if более эффективна.
Ответ 4
Swift 4
В рамках вашей функции сделайте следующее:
btn1.isHidden = true