2011-10-17 17 views

Odpowiedz

170

Nie jestem zaznajomiony z "polem wyboru" w iOS, ale jeśli używasz UISwitch, to jak widać w interfejsie programisty API, zadanie setOn: animated: powinno załatwić sprawę.

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

więc ustawić przełącznik ON w programie, należy użyć:

Objective-C

[switchName setOn:YES animated:YES]; 

Swift

switchName.setOn(true, animated: true) 
25

UISwitches mają właściwość o nazwie "on", która powinna być ustawiona.

Czy mówisz o aplikacji na iOS lub mobilnej stronie internetowej?

+0

OK, o to mi chodziło. Wielkie dzięki! – Suchi

9

// Użyj ten kod ...... // Aby rozwiązać on/off problemu stanu przełącznika w iOS

- (IBAction)btnSwitched:(id)sender { 
    UISwitch *switchObject = (UISwitch *)sender; 
    if(switchObject.isOn){ 
     [email protected]"Switch State is Disabled"; 
    }else{ 
     [email protected]"Switch State is Enabled"; 
    }     
2

Używam również setOn:animated: za to i to działa dobrze. To jest kod, którego używam w aplikacji viewDidLoad, aby przełączać kod w taki sposób, aby ładował ustawienia wstępne.

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

[self.autoplaySwitch setOn:autoPlayOn animated:NO]; 
+0

@jamesh Dzięki za niesamowite uproszczenie kodu! Bardzo doceniane! –

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]; 
    } 
} 
Powiązane problemy