iOS - Cara menyetel UISwitch secara terprogram

104

Saya ingin mengaktifkan atau menonaktifkan UISwitch secara terprogram. Bagaimana saya melakukannya? Saya seorang pemula iOS.

Suchi
sumber

Jawaban:

195

Jika Anda menggunakan UISwitch, seperti yang terlihat di API pengembang, tugas setOn: animated:harus melakukan triknya.

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

Jadi untuk mengatur saklar ON dalam program Anda, Anda akan menggunakan:

Objective-C

[switchName setOn:YES animated:YES];

Cepat

switchName.setOn(true, animated: true)
Andrew_L
sumber
25

UISwitches memiliki properti bernama "on" yang harus disetel.

Apakah Anda berbicara tentang aplikasi iOS atau situs web seluler?

NWCoder
sumber
10

Gunakan kode ini untuk menyelesaikan masalah status on / off di sakelar di 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";
    }                
Anand Kr. Avasthi
sumber
Suara positif untuk baris ini:UISwitch *switchObject = (UISwitch *)sender;
Pengguna yang bukan pengguna
2

Saya juga menggunakan setOn:animated:untuk ini dan berfungsi dengan baik. Ini adalah kode yang saya gunakan di aplikasi viewDidLoaduntuk mengaktifkan UISwitchkode sehingga memuat preset.

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

[self.autoplaySwitch setOn:autoPlayOn animated:NO];
Mike Critchley
sumber
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];   
    }
}
Acharya Ronak
sumber