2013-02-04 1 views
0

여러 개의 알람이있는 알람 앱이 있습니다.UIDatePicker의 날짜를 세그먼트로 설정할 수 없습니다.

알람 목록을 보유하고있는 UITableView 인 AlarmListViewController가 있습니다. 행이 선택되면 Segue가 AlarmViewController (상세 뷰)로 시작됩니다. 그 밖의 모든 것은 날짜를 제외하고 AlarmListViewroller에서 AlarmViewController로 올바르게 전달됩니다.

fullDate은 NSDate를 쉽게 인쇄 할 수 있도록 NSDate의 카테고리입니다. 여기

코드입니다 :

헤더 :

AlarmViewController.h 

@interface AlarmViewController : UITableViewController <UITableViewDataSource, UITableViewDelegate> 

@property (weak, nonatomic) IBOutlet UIDatePicker *timeSelected; 
@property (nonatomic, strong) NSMutableArray *repeatSelection; 
@property (nonatomic, strong) NSString *alarmID; 

@end 

구현 :

AlarmViewController.m 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    NSLog(@"---VIEW DID LOAD---, current date: %@", [[NSDate date] fullDate]); 
    NSLog(@"alarmID: %@", self.alarmID); 
    NSLog(@"repeat: %@", self.repeatSelection); 
    NSLog(@"time: %@", [self.timeSelected.date fullDate]); 

} 

prepareForSegue : 당신은 전에 UI 요소의 값을 설정할 수 없습니다

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
    NSLog(@"self.selectedCell: %d", self.selectedCell); 
    if ([segue.identifier isEqualToString:@"alarmDetail"] || [segue.identifier isEqualToString:@"addAlarm"]) 
    { 
     AlarmViewController *aVC = (AlarmViewController *)[segue destinationViewController]; 
     if (self.tableView.editing) 
     { 
      NSDictionary *setting = [self.alarmList objectAtIndex:self.selectedCell]; 
      NSLog(@"setting.time = %@", [[setting objectForKey:@"time"] fullDate]); 

      aVC.repeatSelection = [setting objectForKey:@"repeat"]; 
      aVC.alarmID = [setting objectForKey:@"alarmID"]; 
      aVC.timeSelected.date = [setting objectForKey:@"time"]; 
     } 
    } 
} 

답변

1

의 보기가로드되었습니다. hich는 prepareForSegue에서 날짜 선택기 날짜를 설정할 때 수행하려는 작업입니다. 대신에 날짜를 aVC에 전달한 다음 viewDidAppear 메서드에서 날짜 선택기 날짜를 날짜로 설정합니다 (해당 날짜를 유지하려면 aVC에 속성이 필요합니다).

+0

고마워요! 시간이 지남에 따라 배웠던 것이거나 배운 곳을 가리킬 수있는 문서입니까? 그것은 완벽하게 이해할 수 있습니다 .. –

+1

@arigold, 나는 그것이 동일한 실수를하고 그것을 교정하기위한 연구를 한 결과로 생각합니다. – rdelmar

관련 문제