2016-02-04 3 views
0

Я использую этот код и получил дату (полная дата) и время в 2-х разных лейблов, но я хочу месяц, день, год и время в разных лейблах:Как получить дату, месяц и год в разных лейблах

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    [self.picker addTarget:self action:@selector(datePickerChanged:) forControlEvents:UIControlEventValueChanged]; 

- (void)datePickerChanged:(UIDatePicker *)datePicker 
{ 
    NSLocale *en_US_POSIX = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]; 
    assert(en_US_POSIX != nil); 


    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    [dateFormatter setLocale:en_US_POSIX]; 
    [dateFormatter setDateFormat:@"dd-MM-yyyy"]; 
    NSDate *dateFromString = [[NSDate alloc] init]; 
    // dateFromString = [dateFormatter dateFromString:curDate]; 
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
    [dateFormat setDateFormat:@"MMMM d yyyy"]; 
    NSString *theDate = [dateFormat stringFromDate:dateFromString]; 
    _lbl.text = theDate; 



    NSDate *currentTime = [NSDate date]; 
    [dateFormatter setDateFormat:@"hh mm"]; 
    NSString *resultString = [dateFormatter stringFromDate: currentTime]; 
    _lbl3.text = resultString; 

} 

СПАСИБО заранее

+0

Использовать 'NSDateComponents'? – Larme

ответ

0

Вам необходимо использовать NSDateComponents. Вот простой пример:

NSDate *dateToCheck = [NSDate date]; 

NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierGregorian]; 

// Extract date components into components 
NSDateComponents *components = [calendar components:NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay fromDate:dateToCheck]; 

NSString *labelDate  = [NSString stringWithFormat:@"%d", (int)components.day]; 
NSString *labelMonth = [NSString stringWithFormat:@"%d", (int)components.month]; 
NSString *labelYear  = [NSString stringWithFormat:@"%d", (int)components.year]; 

NSLog(@"%@, %@, %@", labelDate, labelMonth, labelYear); 
Смежные вопросы