2013-11-08 6 views
1

Мне нужно отсортировать мой UITableView при добавлении новых созданных случайных строк.Сортировка UITableVIew после добавления новой строки

У меня есть этот код:

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(addRandomString)]; 

    self.navigationItem.rightBarButtonItem = addButton; 

    UIBarButtonItem *sortButton = [[UIBarButtonItem alloc] initWithTitle:@"Sort" style:UIBarButtonItemStyleBordered target:self action:@selector(sortStrings)]; 

    self.navigationItem.leftBarButtonItem = sortButton; 

    stringsArray = [[NSMutableArray alloc]init]; 
    int string_lenght = 10; 
    NSString *symbols = @"ABCDEFGHIJKLMNOPQRSTUWXYZabcdefghijklmnopqrstuvwxyz"; 

    for (int y = 0; y<8; y++) 
    { 
     NSMutableString *randomString = [NSMutableString stringWithCapacity:string_lenght]; 

     for (int i = 0; i<string_lenght; i++) 
     { 
      [randomString appendFormat:@"%C", [symbols characterAtIndex:random()%[symbols length]]]; 
     } 
     [stringsArray addObject:randomString]; 
    } 
    stringsForTableView = [[NSMutableArray alloc]initWithArray:stringsArray]; 

} 

- (void) addRandomString { 

    int string_lenght = 10; 

    NSString *symbols = @"ABCDEFGHIJKLMNOPQRSTUWXYZabcdefghijklmnopqrstuvwxyz"; 

    NSMutableString *randomString = [NSMutableString stringWithCapacity:string_lenght]; 

    for (int i = 0; i<string_lenght; i++) 
    { 
     [randomString appendFormat:@"%C", [symbols characterAtIndex:random()%[symbols length]]]; 
    } 

    [stringsForTableView addObject:randomString]; 

    [self.tableView reloadData]; 
} 

- (void) sortStrings{ 

    ?????????????????????? 

} 

Спасибо за вашу помощь!

+0

так, что ваш вопрос? – rocky

+0

мой вопрос в том, какой код мне нужен в методе sortStrings? Я пробовал много способов, но они не работают правильно. Я прошу вашей помощи –

ответ

2

Используйте стандартные функции сортировки для изменяемых массивов:

[stringsForTableView sortUsingDescriptors: 
     @[[NSSortDescriptor sortDescriptorWithKey:@"self" ascending:YES]]]; 
[self.tableView reloadData]; 
+0

omg НАКОНЕЦ ЭТО РАБОТАЕТ !!! Я хочу плакать! Большое спасибо !!!!! –

Смежные вопросы