我有一个视图,其中的对象是从数据库设置的,同样也保存到数据库中。 UITextViews工作得很好,但我似乎无法找到如何设置UISwitch的状态。
我可以在IB中更改它,但这不是我需要的。 DB中的记录具有0或1布尔值。因此,如果该字段为真,那么我想将UISwitch的状态设置为ON。
当我保存记录时,我需要能够查看视图上的值,从而在我的桌子上设置字段。
感谢您的帮助!!
编辑:这是我到目前为止所做的:
.h文件
@interface UserEdit : UIViewController {
IBOutlet UISwitch *male;
}
@property (nonatomic, retain) IBOutlet UISwitch *male;
.m文件
@synthesize male;
- (void)viewDidLoad {
[super viewDidLoad];
[male SetOn:NO];
}
应用在点击
上方的SetOn行时转储我还需要不仅可以设置值,还可以读取它
答案 0 :(得分:42)
您可以通过on
或setOn:animated:
方法设置UISwitch的状态,具体取决于您的要求。
例如:[yourUISwitch setOn:YES];
检查UISwitch Class Reference的设置关闭/开启状态部分以获取更多信息。
<强>更新强>
根据文档,您可以通过[yourUISwitch isOn];
答案 1 :(得分:2)
您可以通过以下方式执行此操作:
//
// ViewController.m
//
#import "ViewController.h"
@interface ViewController ()
@property (weak, nonatomic) IBOutlet UISwitch *mySwitch;
- (IBAction)switchChanged:(id)sender;
@end
@implementation ViewController
- (IBAction)switchChanged:(id)sender
{
[[NSUserDefaults standardUserDefaults] setBool:self.mySwitch.on forKey:@"SwitchState"];
[[NSUserDefaults standardUserDefaults] synchronize];
}
- (void)viewDidLoad
{
[super viewDidLoad];
self.mySwitch.on = [[NSUserDefaults standardUserDefaults] boolForKey:@"SwitchState"];
}
@end
答案 2 :(得分:1)
设置和阅读UISwitch的州
有快捷的版本代码 //Change switch state
self.mSwitchAccept.setOn(true, animated: true)
//Get the switch state
let switchState : Bool = self.mSwitchAccept.on
答案 3 :(得分:0)
为了设置UIS,您必须使用 [yourSwitch setOn:YES animated:YES];
为了读取UISwitch,您需要通过开关状态检索它,这是一个布尔类型 NSLog(@&#34;开关状态:%d&#34;,[yourSwitch isOn]); < /强>