Сохранение выбранного элемента из NSPopupbutton с помощью NSUserDefaults

Я пробовал много вещей и не могу заставить его работать...

 [[NSUserDefaults standardUserDefaults] setObject:[my_popup_button selectedItem] forKey:@"selected"];

Не работает, есть предложения?


person Rstew    schedule 04.08.2013    source источник
comment
Это единственный код, который вы используете для сохранения данных в NSUserDefaults?   -  person icodebuster    schedule 04.08.2013


Ответы (1)


Это из минимального примера, который я только что создал:

AppDelegate.h

#import <Cocoa/Cocoa.h>

@interface AppDelegate : NSObject <NSApplicationDelegate>

@property (assign) IBOutlet NSWindow *window;
@property (assign) IBOutlet NSPopUpButton *popupButton;
- (IBAction)onPopupBtnSelectedItemChanged:(id)sender;

@end

AppDelegate.m

#import "AppDelegate.h"

@implementation AppDelegate

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
    [self.popupButton selectItemAtIndex:[[NSUserDefaults standardUserDefaults] integerForKey:@"selectedItemIndex"]];
}


- (IBAction)onPopupBtnSelectedItemChanged:(id)sender
{
    [[NSUserDefaults standardUserDefaults] setInteger:self.popupButton.indexOfSelectedItem                            
                                               forKey:@"selectedItemIndex"];
}

Только что попробовал, и это работает как шарм. Лучший,

Фло

person guitarflow    schedule 04.08.2013
comment
В данный момент он не работает, он предлагает изменить точку в self.popupbutton на -›, что не работает... - person Rstew; 04.08.2013
comment
Я думаю, вам обязательно нужно прочитать книгу по Objective-C, прежде чем начинать серьезно! Я добавлю больше информации в пост. - person guitarflow; 04.08.2013
comment
Кажется, у меня все еще есть проблема, возможно, есть какие-то флажки, которые нужно снять на всплывающей кнопке в инспекторе? - person Rstew; 11.08.2013
comment
Позвольте мне посмотреть, есть ли у меня демо-проект. Я могу прислать вам это, чтобы вы могли сами увидеть, что происходит. - person guitarflow; 11.08.2013
comment
Ну вот. Дайте мне знать, когда вы загрузите проект! dropbox.com/s/tak7czd7tv1s39l/Popup%20Button.zip - person guitarflow; 11.08.2013
comment
Скачал на флешку со своей PS3, завтра протестирую, спасибо большое! - person Rstew; 12.08.2013