Ho raggiunto per mostrare il datepicker all'interno del popover, farlo a livello di codice come viene mostrato in UIDatePicker in UIPopover.Come posso mostrare un UIDatePicker all'interno di un Popover su iPad usando StoryBoard?
Ma ho cercato di farlo in Interface Builder, ho già fatto un nome View Controller DatePickerViewController.m con un DatePicker in essa e il suo corrispondente IBoulet
#import <UIKit/UIKit.h>
@interface DatePickerViewController : UIViewController
@property (strong, nonatomic) IBOutlet UIDatePicker *birthdayDatePicker;
@end
Poi ho bisogno questo viene mostrato in un popover quando il campo di testo Compleanno è in fase di modifica. per cui uso il seguente codice
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
//Assign DatePicker to Birthday TextField
//build our custom popover view
DatePickerViewController* popoverContent = [[DatePickerViewController alloc] init];
//resize the popover view shown
//in the current view to the view's size
popoverContent.contentSizeForViewInPopover = CGSizeMake(320, 216);
// dismiss existing popover
if (self.popoverControllerBirthday)
{
[self.popoverControllerBirthday dismissPopoverAnimated:NO];
self.popoverControllerBirthday = nil;
}
//create a popover controller with my DatePickerViewController in it
UIPopoverController *popoverControllerForDate = [[UIPopoverController alloc] initWithContentViewController:popoverContent];
//Set the delegate to self to receive the data of the Datepicker in the popover
popoverControllerForDate.delegate = self;
//Adjust the popover Frame to appear where I want
CGRect myFrame =textField.frame;
myFrame.origin.x = 260;
myFrame.origin.y = 320;
//Present the popover
[popoverControllerForDate presentPopoverFromRect:myFrame
inView:self.view
permittedArrowDirections:UIPopoverArrowDirectionDown
animated:YES];
self.popoverControllerBirthday = popoverControllerForDate;
return NO; // tells the textfield not to start its own editing process (ie show the keyboard)
}
E ho anche importare il costume DatePickerViewController nel mio attuale ViewController
#import "DatePickerViewController.h"
Ma non sta mostrando il DatePicker all'interno del popover.
Qualcuno sa cosa potrebbe accadere?
Si prega di controllare la mia risposta https://stackoverflow.com/a/7343106/815179 – Narayana