iOS - Cách đặt UISwitch theo lập trình


104

Tôi muốn bật hoặc tắt UISwitch của mình theo lập trình. Tôi sẽ làm điều đó như thế nào? Tôi là một người mới sử dụng iOS.

Câu trả lời:


195

Nếu bạn đang sử dụng UISwitch, thì như đã thấy trong API nhà phát triển, nhiệm vụ setOn: animated:sẽ thực hiện thủ thuật.

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

Vì vậy, để đặt công tắc BẬT trong chương trình của bạn, bạn sẽ sử dụng:

Objective-C

[switchName setOn:YES animated:YES];

Nhanh

switchName.setOn(true, animated: true)

25

UISwitches có một thuộc tính gọi là "on" cần được thiết lập.

Bạn đang nói về một ứng dụng iOS hay một trang web di động?


10

Sử dụng mã này để giải quyết vấn đề trạng thái bật / tắt trong công tắc trong 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";
    }                

Đã ủng hộ cho dòng này:UISwitch *switchObject = (UISwitch *)sender;
Người dùng không phải là người dùng

2

Tôi cũng sử dụng cái setOn:animated:này và nó hoạt động tốt. Đây là mã tôi sử dụng trong ứng dụng viewDidLoadđể chuyển đổi UISwitchmã trong để nó tải giá trị đặt trước.

// 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];   
    }
}
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.