iOS - วิธีตั้งค่า UISwitch แบบเป็นโปรแกรม


105

ฉันต้องการตั้งค่า UISwitch เป็นเปิดหรือปิดโดยใช้โปรแกรม ฉันจะทำอย่างไร ฉันเป็นมือใหม่ iOS

คำตอบ:


197

หากคุณใช้ UISwitch ตามที่เห็นใน API ของนักพัฒนางานsetOn: animated:ควรทำเคล็ดลับ

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

ดังนั้นในการตั้งค่าสวิตช์ในโปรแกรมของคุณคุณจะต้องใช้:

วัตถุประสงค์ -C

[switchName setOn:YES animated:YES];

รวดเร็ว

switchName.setOn(true, animated: true)

25

UISwitches มีคุณสมบัติที่เรียกว่า "เปิด" ที่ควรตั้งค่า

คุณกำลังพูดถึงแอป iOS หรือเว็บไซต์บนมือถือ?


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];   
    }
}
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.