2016-05-04 12 views
-1

würde Ich mag das Format ändern, wie das Bildändern Sie das Datumsformat von Datumsauswahl

date view picker

von YYYY/MM/DD angebracht/MMM hh bis dd: min ein, aber leider kann ich nicht tun dass

Hier ist meine Arbeit im view-Controller 3

#import "ViewController3.h" 

@interface ViewController3() 

@end 

@implementation ViewController3 

@synthesize text; 

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    datePicker=[[UIDatePicker alloc]init]; 
    datePicker.datePickerMode=UIDatePickerModeDate; 
    [self.text setInputView:datePicker]; 
    UIToolbar *toolBar=[[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 44)]; 
    [toolBar setTintColor:[UIColor grayColor]]; 
    UIBarButtonItem *doneBtn=[[UIBarButtonItem alloc]initWithTitle:@"Done" style:UIBarButtonItemStyleBordered target:self action:@selector(ShowSelectedDate)]; 
    UIBarButtonItem *space=[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil]; 
    [toolBar setItems:[NSArray arrayWithObjects:space,doneBtn, nil]]; 
    [self.text setInputAccessoryView:toolBar]; 

} 

-(void)ShowSelectedDate 
{ NSDateFormatter *formatter=[[NSDateFormatter alloc]init]; 
    [formatter setDateFormat:@"dd/MMM hh:min a"]; 
    self.text.text=[NSString stringWithFormat:@"%@",[formatter stringFromDate:datePicker.date]]; 
    [self.text resignFirstResponder]; 
} 
    @end 

haben Sie eine andere Idee?

+0

Verwenden 'UIDatePickerModeDateAndTime' – rmaddy

+0

So fragen Sie, wenn der Benutzer ein Datum wählt man es in einem anderen Format in Textfeld angezeigt werden soll ?? –

+0

Beispiele für UIDatePickerModeDateAndTime? –

Antwort

0

Sie sollten Ihren Datumsformatierer im ursprünglichen Datumsformat einrichten und dann das Ergebnis in das neue Datumsformat konvertieren.

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"YYYY/MM/DD"]; 
NSString *originalDateString = [dateFormatter stringFromDate:datePicker.date]; 
[dateFormatter setDateFormat:@"dd/MMM hh:mm a"]; 
NSDate *newDate = [dateFormatter dateFromString:origianalDateString]; 
self.text.text = [NSString stringWithFormat:@"%@", [dateFormatter stringFromDate:newDate]]; 
Verwandte Themen