チェックボックス パスワードを保存する(ログインフォーム用)があります。そして、私がチェックしたときに保存してフォームを実行し、チェックボックスのチェックを表示したいです。チェックを外すと実行され、チェックボックスがオフになります。私を共有してください。少し早いですがお礼を
質問する
4487 次
4 に答える
7
チェックボックスの値バインディングを共有ユーザー デフォルト コントローラのキーにバインドします。
(これが iOS なのか Mac なのかは特に言われませんでしたが、iOS には標準のチェックボックス コントロールがないため、後者であると想定しました。)
于 2012-09-19T10:09:09.577 に答える
1
.h ファイル:
@property (nonatomic, unsafe_unretained) IBOutlet NSButton *isCheckedButton;
.m ファイルについて
@synthesize isCheckedButton;
- (IBAction)changeButtonState:(id)sender{
if ([isCheckedButton state]) { // Check if button is checked
[[NSUserDefaults standardUserDefaults] setBool:TRUE forKey:@"YOUR KEY HERE"];
NSLog(@"Change state to On");
}else{
[[NSUserDefaults standardUserDefaults] setBool:FALSE forKey:@"YOUR KEY HERE"];
NSLog(@"Change state to Off");
}
[[NSUserDefaults standardUserDefaults] synchronize]; // ** DON'T FORGET THIS LINE! ** //
}
上記のコードはもっと単純かもしれませんが、これがよりよく理解できる方法だと思います。次の方法でいつでも値を読み取ることができます。
[[NSUserDefaults standardUserDefaults] boolForKey:@"YOUR KEY HERE"];
于 2013-03-30T23:55:05.387 に答える
1
-setBool:forKey:
のメソッドを使用しNSUserDefaults
ます。
if(checked)
[[NSUserDefaults standardUserDefaults] setBool:true forKey:@"RememberMe"];
else
[[NSUserDefaults standardUserDefaults] setBool:false forKey:@"RememberMe"];
次に、次のように返される実際のBOOL 値を取得できます。
BOOL checked = [[NSUserDefaults standardUserDefaults] boolForKey:@"RememberMe"];
編集:データをすぐに保存するためにsynchronize
、この呼び出しとして追加することを忘れないでくださいNSUserDefaults
[[NSUserDefaults standardUserDefaults] synchronize];
于 2012-09-19T09:52:43.077 に答える
0
あなたはこれを試してください:
- (void)checkboxButton:(id)sender
{
if ( checkboxSelected == 1){
[ checkbox setSelected:NO];
[checkbox setImage:[UIImage imageNamed:@"checkbox.png"] forState:UIControlStateNormal];
checkboxSelected = 0;
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
[prefs setInteger: checkboxSelected forKey:@"checkboxstate"];
} else {
[checkbox setSelected:YES];
[checkbox setImage:[UIImage imageNamed:@"checkbox-checked.png"] forState:UIControlStateNormal];
checkboxSelected = 1;
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
[prefs setInteger: checkboxSelected forKey:@"checkboxstate"];
}
}
于 2012-09-19T11:48:59.400 に答える