Відповіді:
Якщо ви використовуєте UISwitch, то, як видно з API розробника, завдання setOn: animated:
повинно виконати трюк.
- (void)setOn:(BOOL)on animated:(BOOL)animated
Отже, щоб увімкнути перемикач у своїй програмі, ви використовуєте:
Ціль-С
[switchName setOn:YES animated:YES];
Швидкий
switchName.setOn(true, animated: true)
Використовуйте цей код, щоб вирішити проблему стану включення / вимкнення в комутаторі в iOS
- (IBAction)btnSwitched:(id)sender {
UISwitch *switchObject = (UISwitch *)sender;
if(switchObject.isOn){
self.lblShow.text=@"Switch State is Disabled";
}else{
self.lblShow.text=@"Switch State is Enabled";
}
Я також використовую setOn:animated:
для цього, і це прекрасно працює. Це код, який я використовую в додатку viewDidLoad
для перемикання UISwitch
коду, щоб він завантажував попередньо встановлений.
// Check the status of the autoPlaySetting
BOOL autoPlayOn = [[NSUserDefaults standardUserDefaults] boolForKey:@"autoPlay"];
[self.autoplaySwitch setOn:autoPlayOn animated:NO];
ViewController.h
- (IBAction)switchAction:(id)sender;
@property (strong, nonatomic) IBOutlet UILabel *lbl;
ViewController.m
- (IBAction)switchAction:(id)sender {
UISwitch *mySwitch = (UISwitch *)sender;
if ([mySwitch isOn]) {
self.lbl.backgroundColor = [UIColor redColor];
} else {
self.lbl.backgroundColor = [UIColor blueColor];
}
}
UISwitch *switchObject = (UISwitch *)sender;