オブジェクトがデータベースから設定され、同様にデータベースに保存されるビューがあります。 UITextViewsはうまく機能していますが、UISwitchの状態を設定する方法がわからないようです。
IBで変更できますが、それは私が必要としていることではありません。 DB内のレコードのブール値は0または1です。したがって、フィールドがtrueの場合、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行にヒットすると、アプリはダンプします
値を設定するだけでなく、それを読み取ることもできる必要があります
要件に応じて、on
またはsetOn:animated:
メソッドを使用して ISwitch の状態を設定できます。
例:[yourUISwitch setOn:YES];
詳細については、 ISwitchクラスリファレンス の「オフ/オン状態の設定」セクションを確認してください。
[〜#〜]更新[〜#〜]
ドキュメントによると、[yourUISwitch isOn];
を介して値を読み取ることができます
次の方法で実行できます。
//
// 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
UISwitchの状態を設定および読み取るためのSwiftバージョンコード)があります
//Change switch state
self.mSwitchAccept.setOn(true, animated: true)
//Get the switch state
let switchState : Bool = self.mSwitchAccept.on
UISを設定するには、これを使用する必要があります[yourSwitch setOn:YESアニメーション:YES];
UISwitchを読み取るには、ブール型であるスイッチの状態でUISwitchを取得する必要がありますNSLog(@ "Switch state:%d"、[yourSwitch isOn]);