[英]Programmatically change state of a UISwitch bugs
我试图动态地改变与所述方法的UISwitch [self.mySwitch setOn:YES animated:YES];
状态的变化,以及在代码中,使得mecanisme工作正常,但在视图状态已经无法改变。 因此,我将UISwitch显示为OFF并按原样工作。
当我在敲打,开关成了。 因此,我必须点按两次以启动代码的inCaseOff部分。
我希望这足够清楚。
[编辑]
这是您要求的代码
- (void)viewDidLoad
{
[self manageTheSwitch];
}
- (void) manageTheSwitch{
self.mySwitch = [[UISwitch alloc]init];
if(randomObject != nil){
[self.mySwitch setOn:YES animated:YES];
}else{
[self.mySwitch setOn:NO animated:YES];
}
}
您正在以编程方式将另一UISwitch设置为视图中显示的UISwitch。 您完全不需要执行[[UISwitch alloc]init]
,而是应该通过控制器中的IBOutlet
属性(连接到IB中的视图)来检索它。
假设您确实连接了mySwitch,那么您需要做的就是删除此行:
self.mySwitch = [[UISwitch alloc]init];
您的问题是,您要在manageTheSwitch方法中实例化一个新按钮,而不是访问在情节提要中创建的按钮。 只需消除该alloc init。
尝试使用UISwitch继承自UIControl的“ selected”属性: self.mySwitch.selected = YES;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.