Xcode UiableView разделы и строки Сортированы по дате (от MutableArray)

StackOverflow https://stackoverflow.com//questions/23029081

Вопрос

В моем UiableView у меня есть несколько секций с названиями даты. Даты отсортированы по дате в Nsmutablearray. Мои разделы показывают правильные даты, которые отлично работают, а число COMPROWSINNSICE работает нормально. Для элементов TextLabels я получил Nsmutablearrays, которые отсортированы в том же порядке, такие как отсортированные даты. Как получить правильную TextLabel для соответствующей даты (раздел)? С IndexPath.section он работает только тогда, когда в разделе в разделе есть 1 ряд. Когда я получил 2 или более строк в разделе, используют текстовые элементы, имеют неправильные значения. Я понимаю, что это можно сделать с словарями, но я не мог найти решение.

@property NSMutableArray *dateArray;     //date for my sections
@property NSMutableArray *hoursArray;   //hours for cells textlabel
.





мои разделы

"January 2014",
"April 2014",
"June 2014"
.

мои часы:

"1",
"2",
"3",
.

/////////// Редактирование

Когда я использую Cell.textLabel.text= [WOUNEARY OBLESTATINDEX: indexpath.ruw] Это всегда начинается с индекса 0 в каждом разделе.

Когда я использую Cell.TextLabel.Text= [WANDARRAY ObjectAtAtIndex: indexpath.section] Он имеет правильную сортировку, когда есть только 1 строка каждого раздела. Но когда в разделе больше строк в разделе, заказ не прав

Это было полезно?

Решение

Вы должны создать свой DataSource отсортирован, поэтому просто создайте разрезар rowaray, а затем использовать его соответственно. Тогда вы можете использовать это так:

Cell.textlabel.text = [[sectionArray objectatindex:indexpath.section] objectAtIndex:indexpath.row];
.

Теперь вам просто нужно управлять своим источником DataSource.

Обновлено: Вы можете создать 2D Array, как это

NSMutableArray *dateArray = [[NSMutableArray alloc] init];


for(int i=0; i<=dateData.length; i++)
{
   NSMutableArray *hoursArray = [[NSMutableArray alloc] init];

   for(int j=0; j<=hoursData.length; j++)
   {
     [hoursArray addObject:yourObject];
   }

   [dateArray addObject:hoursArray];
}
.

Это просто пример, однако вы можете оптимизировать в соответствии с вашими потребностями.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top