web-dev-qa-db-ja.com

iPhoneの設定と読み取り状態UISwitch

オブジェクトがデータベースから設定され、同様にデータベースに保存されるビューがあります。 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行にヒットすると、アプリはダンプします

値を設定するだけでなく、それを読み取ることもできる必要があります

15
Mark Worsnop

要件に応じて、onまたはsetOn:animated:メソッドを使用して ISwitch の状態を設定できます。

例:[yourUISwitch setOn:YES];

詳細については、 ISwitchクラスリファレンス の「オフ/オン状態の設定」セクションを確認してください。

[〜#〜]更新[〜#〜]

ドキュメントによると、[yourUISwitch isOn];を介して値を読み取ることができます

43
John Parker

次の方法で実行できます。

//
//  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
Painted Black

UISwitchの状態を設定および読み取るためのSwiftバージョンコード)があります

    //Change switch state
    self.mSwitchAccept.setOn(true, animated: true)
    //Get the switch state
    let switchState : Bool = self.mSwitchAccept.on
1
Kevin ABRIOUX

UISを設定するには、これを使用する必要があります[yourSwitch setOn:YESアニメーション:YES];

UISwitchを読み取るには、ブール型であるスイッチの状態でUISwitchを取得する必要がありますNSLog(@ "Switch state:%d"、[yourSwitch isOn]);

0
Super Xtreem