From 1e7f5c30bc7e63c96db23e26f7d60db78acbb782 Mon Sep 17 00:00:00 2001 From: masakih Date: Sat, 2 Apr 2016 21:36:22 +0900 Subject: [PATCH] =?utf8?q?KCD=20CoreData=E3=81=AE=E3=83=86=E3=82=99?= =?utf8?q?=E3=83=BC=E3=82=BF=E3=81=8B=E3=82=99=E3=81=AA=E3=81=84=E6=99=82?= =?utf8?q?=E3=81=AB=E8=89=A6=E9=9A=8A=E3=83=AA=E3=82=B9=E3=83=88=E3=81=8B?= =?utf8?q?=E3=82=99=E5=85=A8=E3=81=8F=E8=A1=A8=E7=A4=BA=E3=81=95=E3=82=8C?= =?utf8?q?=E3=81=AA=E3=81=84=E5=95=8F=E9=A1=8C=E3=82=92=E4=B8=80=E9=83=A8?= =?utf8?q?=E8=A7=A3=E6=B6=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 艦隊リストの艦隊を切り替えると表示されるようにした --- KCD/HMFleetManager.h | 2 +- KCD/HMFleetManager.m | 37 +++++++++++++++++++++++++++---------- 2 files changed, 28 insertions(+), 11 deletions(-) diff --git a/KCD/HMFleetManager.h b/KCD/HMFleetManager.h index f2335efe..e12e305d 100644 --- a/KCD/HMFleetManager.h +++ b/KCD/HMFleetManager.h @@ -11,6 +11,6 @@ @class HMFleet; @interface HMFleetManager : NSObject -@property (readonly) NSArray *fleets; +@property (nonatomic, readonly) NSArray *fleets; @end diff --git a/KCD/HMFleetManager.m b/KCD/HMFleetManager.m index 2e483825..04f4e889 100644 --- a/KCD/HMFleetManager.m +++ b/KCD/HMFleetManager.m @@ -17,7 +17,7 @@ //static HMFleetManager *sharedInstance = nil; @interface HMFleetManager () -@property (strong) NSArray *fleets; +@property (nonatomic, strong) NSArray *fleets; @property (strong) NSArrayController *fleetController; @end @@ -28,20 +28,37 @@ { self = [super init]; if(self) { - NSMutableArray *array = [NSMutableArray array]; - for(NSInteger i = 1; i <= 4; i++) { - HMFleet *fleet = [HMFleet fleetWithNumber:@(i)]; - [array addObject:fleet]; - } - _fleets = array; - - _fleetController = [[NSArrayController alloc] initWithContent:_fleets]; - [_fleetController addObserver:self forKeyPath:@"arrangedObjects.ships" options:0 context:NULL]; + [self setupFleets]; } return self; } +- (void)setupFleets +{ + NSMutableArray *array = [NSMutableArray array]; + for(NSInteger i = 1; i <= 4; i++) { + HMFleet *fleet = [HMFleet fleetWithNumber:@(i)]; + [array addObject:fleet]; + } + _fleets = array; + + if(_fleets[0].ships.count == 0) { + return; + } + + _fleetController = [[NSArrayController alloc] initWithContent:_fleets]; + [_fleetController addObserver:self forKeyPath:@"arrangedObjects.ships" options:0 context:NULL]; +} + +- (NSArray *)fleets +{ + if(_fleets[0].ships.count == 0) { + [self setupFleets]; + } + return _fleets; +} + - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { if([keyPath isEqualToString:@"arrangedObjects.ships"]) { -- 2.11.0