Bạn có thể đặt các tế bào của UITableView bạn cách nào để muốn, nhưng bạn phải làm điều đó trước khi hiển thị chúng, khi bạn tạo nguồn dữ liệu của bảng. Nếu bạn sử dụng NSFetchResultsController, bạn có thể đặt khoảng cách làm bộ mô tả sắp xếp. Và nếu bạn đang sử dụng một NS đơn giản (Mutable) Array, hãy sắp xếp nó trước khi biến nó trở thành nguồn của bảng.
Giống như Chris nói, bạn có thể làm điều đó với
NSSortDescriptor *titleSorter= [[NSSortDescriptor alloc] initWithKey:@"annotationLocation" ascending:YES];
Nếu nó là một NSArray những gì bạn đang sử dụng, sau đó:
[arrayOfObjects sortUsingDescriptors:[NSArray arrayWithObject:titleSorter];
và nếu nó là một NSFetchResultsController:
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:titleSorter, nil];
[fetchRequest setSortDescriptors:sortDescriptors];
Douglas, bạn đã sử dụng giải pháp nào nhất? Bạn đang sử dụng CoreData? – marciokoko
giải pháp ferostar hoạt động cho tôi. Tôi đang sử dụng tập tin .plist. phân bổ và chú thích Vị trí đều là CLLocation. Vì vậy, tôi sử dụng -initWithLatitude: kinh độ: và -distanceFromLocation: để có được khoảng cách và sắp xếp nó trên một NSArray. –
Có lẽ nó sẽ là tốt nhất để trò chuyện nhưng tôi có một loạt các địa điểm với lat và dài. Tôi tính khoảng cách từ userLocation đến từng vị trí. Vì vậy, tôi có tất cả các dữ liệu, vì vậy những gì tôi đặt trong mảng mới? Tại đây: http: //stackoverflow.com/questions/14845434/how-do-i-sort-table-cells-from-core-data – marciokoko