iOS - Как программно настроить UISwitch

105

Я хочу программно включить или выключить свой UISwitch. Как мне это сделать? Я новичок в iOS.

Сучи
источник

Ответы:

197

Если вы используете UISwitch, то, как видно из API разработчика, задача setOn: animated:должна помочь.

- (void)setOn:(BOOL)on animated:(BOOL)animated

Итак, чтобы установить переключатель в своей программе, вы должны использовать:

Цель-C

[switchName setOn:YES animated:YES];

Swift

switchName.setOn(true, animated: true)
Andrew_L
источник
25

У UISwitches есть свойство, называемое «on», которое необходимо установить.

Вы говорите о приложении для iOS или о мобильном веб-сайте?

NWCoder
источник
10

Используйте этот код для решения проблемы включения / выключения в переключателе в 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";
    }                
Ананд Кр. Авасти
источник
Проголосовали за эту строку:UISwitch *switchObject = (UISwitch *)sender;
Пользователь, который не является пользователем,
2

Я также использую setOn:animated:для этого, и он отлично работает. Это код, который я использую в приложении viewDidLoadдля переключения UISwitchв коде, чтобы он загружал предустановку.

// Check the status of the autoPlaySetting
BOOL autoPlayOn = [[NSUserDefaults standardUserDefaults] boolForKey:@"autoPlay"];

[self.autoplaySwitch setOn:autoPlayOn animated:NO];
Майк Кричли
источник
0

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];   
    }
}
Ачарья Ронак
источник