ここでは2つのことを行う必要があります。
- があなたの第三及び第四のメニュー項目を無効にするには、
NO
に自分のenabled
プロパティを設定する必要があります。 [[yourPopUpButton itemAtIndex:2] setEnabled:NO];
[[yourPopUpButton itemAtIndex:3] setEnabled:NO];
NO
にNSPopUpButton
のautoenablesItems
プロパティを設定します。
[yourPopUpButton setAutoenablesItems:NO];
あなたがこれを設定しない場合は、ポップアップボタンをクリックすると、メニュー項目が自動的にこれらのことを行う手順1
を使用してそれらを無効にするにもかかわらず、有効になります-(void)awakeFromNib
メソッド。
ログインデータを永続ストレージに保存する場合は、NSUserDefaults
を使用できます。例えば。
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; // LINE 1: create userDefaults instance
[userDefaults setObject:@"enteredUserType" forKey:@"UserType"]; // LINE 2: store a value
NSString *userType = [userDefaults objectForKey:@"UserType"]; // LINE 3: retrieve the value
ここで、UserType
は、ユーザー定義のキーです。任意のキーを定義できます。
私はWelcomePageクラスのinitメソッドでこれを試しました。私のinitメソッドは次のようになります: - (id)init {...... self = [super init]; ........ if(self){...... [actionList setAutoenablesItems:NO]; ......... [[アクションリストitemAtIndex:2] setEnabled:NO]; ......... [[アクションリストitemAtIndex:3] setEnabled:NO]; ........ リターン・セルフ; .......... } ........ } ..........これは間違っていますか? –
'Interface Builder 'を使って' UI'を作成していますか?もしあなたがそうしているのであれば、ボタンはあなたの 'init'メソッドの中でまだ初期化されていません。 'init'メソッドが終了した後、このコードを試してください。 – EmptyStack
さて、このコードをどこに置くべきかわからないようです。このために使用できるデリゲートメソッドを提案できますか?WelcomePageウィンドウが起動されるとすぐにデリゲートメソッドを呼び出す必要がありますか? –