если у вас есть все вещи в одном классе, статический член / член будет хорошо. (мы не можем использовать vars в расширениях ... :( глобальные переменные кажутся плохими, но никак ...)

о. Проблема в том, что у нас есть NSStrings, заполненные датами в формате yyyyMMdd, и мы хотим получить текущий день недели и название месяца. Функция dagOmvandlare преобразует строку даты в день недели и месяц. Затем вызывается функция viewDidload для присвоения названий всех наших кнопок с английских до шведских месяцев.

наше текущее решение выглядит так:

-(NSString *)dagOmvandlare:(id) suprDatum{

   NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
   dateFormatter.dateFormat = @"yyyyMMdd";

   NSDate *date = [dateFormatter dateFromString:suprDatum];


   NSString * monthString = [date descriptionWithCalendarFormat:@"%B"timeZone:nil
                                                         locale:[[NSUserDefaults standardUserDefaults] dictionaryRepresentation]];

   if ([monthString isEqualToString:@"January"]) {
       monthString = @"Januari";
   }
   else
       if ([monthString isEqualToString:@"February"]) {
           monthString = @"Februari";
       }
       else
           if ([monthString isEqualToString:@"May"]) {
               monthString = @"Maj";
           }
           else
               if ([monthString isEqualToString:@"June"]) {
                   monthString = @"Juni";
               }
               else
                   if ([monthString isEqualToString:@"July"]) {
                       monthString = @"Juli";
                   }
                   else
                       if ([monthString isEqualToString:@"August"]) {
                           monthString = @"Augusti";
                       }
                       else
                           if ([monthString isEqualToString:@"October"]) {
                               monthString = @"Oktober";
                           }
                           else
                               if ([monthString isEqualToString:@"March"]) {
                                   monthString = @"Mars";
                               }

   return monthString;

}



- (void)viewDidLoad {
   [super viewDidLoad];

    [button3 setTitle:(NSString *)[self dagOmvandlare:self.datum1] forState:UIControlStateNormal];
    [button2 setTitle:(NSString *)[self dagOmvandlare:self.datum2] forState:UIControlStateNormal];
    [bmanad1 setTitle:(NSString *)[self dagOmvandlare:self.datum3] forState:UIControlStateNormal];

}

И мы выяснили, что

NSString * monthString = [date descriptionWithCalendarFormat:@"%B"timeZone:nil
                                                         locale:[[NSUserDefaults standardUserDefaults] dictionaryRepresentation]];

не разрешается использовать в соответствии с руководящими принципами Apple относительно непубличных API. Таким образом, основной вопрос заключается в том, каким образом можно получить день недели и название месяца из наших строк дат, которые содержат даты в формате yyyyMMdd?

Ответы на вопрос(1)

Ваш ответ на вопрос