是对于objective-c的新手,我已经创建了一个登录页面的应用程序,其中我已经使用UISwitch来记住d登录详细信息,如果开关处于开启模式。我已经完成了记住登录详细信息,但问题是如何使用开关开/关条件。 Thanx提前
答案 0 :(得分:17)
最简单的解决方案:)
if (switchValue.on){
//Remember Login Details
}
else{
//Code something else
}
答案 1 :(得分:7)
您可以在代码中的某处添加条件语句,具体取决于switch的on
属性。例如,假设您记住了名为rememberLoginDetails
的方法中的登录详细信息。你要做的是,当某个动作被触发时(例如,用户离开登录页面):
if([yourSwitch isOn]) {
[self rememberLoginDetails];
} else {
// Do nothing - switch is not on.
}
这里重要的方法是UISwitch isOn
的{{1}}方法。 yourSwitch
是交换机的isOn
属性的getter,如果交换机处于开启状态,则on
属性包含BOOL
,如果不是,则为YES
。NO
有关详细信息,您可以看到UISwitch class reference,特别是part about isOn
。
答案 2 :(得分:3)
如果您想在用户开启交换机时记住登录详细信息,可以通过创建操作来完成。
- (IBAction)yourSwitch:(id)sender {
if([sender isOn]){
//do your stuff here
}else{
}
}
答案 3 :(得分:0)
我认为代码必须是这样的:
if([yourSwitch isOn] == YES) {
[self rememberLoginDetails];
} else {
// Do nothing - switch is not on.
}
答案 4 :(得分:0)
如果您的UISwitch位于tableView
中,这是另一种解决方案1在“tableView:cellForRowAtIndexPath:”方法
中添加此代码[switchControl addTarget:self action:@selector(switchChanged:) forControlEvents:UIControlEventValueChanged];
2添加此方法
- (void) switchChanged:(id)sender {
UISwitch *switchControl = sender;
NSLog( @"The switch is %@", switchControl.on ? @"ON" : @"OFF" );
}
答案 5 :(得分:-1)
这是该问题的另一种解决方案。
if (switchValue.on == YES)
{
// Code...
}
else
{
// Other code...
}
答案 6 :(得分:-1)
我有同样的问题,我的名字是UISwitch = Selected
我将其更改为其他名称并且有效。