0

uipopover で uidatepicker をポップアップし、それをポップした VC にデータを送り返すことができます。私は基本的に、uidatepicker をポップアップする 2 つの VC (StartdateVC と endDateVC) を持っています。最後の日付を保存し、再起動時に uidatepicker を開始する必要があります。だから私のコードはpopoverのviewDidLoadにあります、

if (myLastDate == nil) {
    [self.mydatePicker setDate:[NSDate date] animated:NO];
} else {
    NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
    [formatter setDateStyle : NSDateFormatterLongStyle];

    [self.mydatePicker setDate:[formatter dateFromString:myLastDate] animated:NO];

[super viewDidLoad];
}

myLastDate を NSUserDefaults に保存し、ここで取得しました。どの VC がポップアップを起動したかを区別できるようにして、対応する最後の日付で uidatepicker を起動できるようにしたいと考えています。どんなアイデアやヒントも大歓迎です。:)

編集: 各 VC には、次の方法があります。

- (IBAction)calendarbutton:(UIButton *)sender {
    UIView *anchor = sender;
    selectDatePopover *selectDatePopoverinstance =
    [self.storyboard instantiateViewControllerWithIdentifier:@"selectDatePopover"];
    // selectDatePopover.delegate = self;
    _popover = [[UIPopoverController alloc] initWithContentViewController:selectDatePopoverinstance];
    [_popover presentPopoverFromRect:anchor.frame inView:anchor.superview permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
    selectDatePopoverinstance.delegate = self;
    _popover.delegate =self;

}

4

0 に答える 0