2014-02-14 4 views
0

Я использую пользовательский тип ячейки UITableview.Как избавиться от нежелательных верхних ячеек табличного вида

Пользовательская ячейка имеет две строки текста один под другим ключом.

Данные, создающие таблицу, представляют собой массив, отсортированный по ключу.

Мне нужно проверить, должны ли верхние некоторые из верхних клавиш быть частью таблицы или нет.

Если нет, мне нужно пропустить использование этих пар значений ключей и затем использовать данные левого массива для создания таблицы. например, индекс 0,1,2 может быть пропущен.

Когда я пытаюсь поставить это условие в cellForRowAtIndexPath: как этот

if (key is to be used) 
{ 
    cell.key.text = [NSString stringWithFormat:@"%@", [mrow1 etimov]]; 

    cell.value.text = [NSString stringWithFormat:@"%@", [mvalue1 valor]]; 
} 

Что это делает, что вместо того, чтобы не создавать верхние 3 клеток (например) он создает ячейку без фактических данных, имеющих ключевого значения, кроме ярлыки, которые я использовал в пользовательской ячейке для ключа и значения.

Что я могу изменить, чтобы избавиться от нежелательных верхних ячеек?

ответ

1

Вы должны изменить количество строк в tableView:numberOfRowsInSection:. Очевидно, что если вы удалите три строки, количество строк изменится.

Он также повлияет на метод indexPath в методе tableView:cellForRowAtIndexPath:. Пропустив первые три элемента, indexPath.row = 0 должен соответствовать третьему элементу в массиве элементов.

Других слов:

numberOfRows = items.count - numberOfSkippedRows 
item = items[indexPath.row + numberOfSkippedRows] 
+0

я повлиял на количество строк и уменьшить их. но происходит то, что вместо пропусков первых 3 ячеек он не создает последние 3 ячейки. и все еще создавая первые 3 ячейки без фактических данных – silverkid

+0

Внимательно прочитайте о 'indexPath' и о том, как получить соответствующий элемент в моем ответе – vokilam

+0

oh да спасибо, я пропустил это .. он работает сейчас – silverkid

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