У меня есть UITableView со стилем, "Сгруппированным", который я использую для установки некоторых опций в моем Приложении. Я хотел бы за одну из ячеек этого UITableView только обнаружиться в зависимости от того, активируется ли другая из ячеек этого UITableView или нет. Если это не, первая ячейка должна обнаружиться (предпочтительно с плавной анимацией), если это, первая ячейка должна скрыться.
Я пытался возвратиться nil
в соответствующем -tableView:cellForRowAtIndexPath:
для сокрытия ячейки но это не работает и вместо этого выдает исключение.
Я в настоящее время застреваю и из идей, как решить это, таким образом, я надеюсь, что некоторые из Вас могут указать на меня в правильном направлении.
Вот удобный пост, в котором автор предоставляет какой-то исходный код для выполнения анимации в текущей выбранной ячейке:
http://iphonedevelopment.blogspot.com/2010/01/navigation-based-core-data-application .html
Он использует это в контексте NSFetchedResultsController, но вы можете увидеть, как он использует различные вызовы, чтобы добавить / удалить ячейки и разделы.
Теперь в вашем случае вам нужно будет изменить любой массив, который вы используете для размещения данных, используемых для генерации строк в вашей табличном представлении, когда вы «активируете» вашу ячейку, затем выборочно используете:
:
Чтобы настроить вещи соответственно (вы можете начать с таблицы: ReloadData :, неэффективно).
Я понимаю, что API может быть немного пугающим, но найдите время, чтобы прочитать его и понять, что делают различные звонки. Понимание того, как UiableView использует свой источник данных и делегат, а также цепочка событий, которые возникают, когда ячейки выбираются / удалены / etc., Важно, если вы хотите получить все правильно (и без разбивкой).
Vector реализует List, поэтому Collections.sort будет работать.
-121--2128134-SELECT *, value - nextvalue AS diff
FROM (
SELECT m.*, LEAD(value) OVER (ORDER BY date DESC) AS nextvalue
FROM mytable m
ORDER BY
date DESC
)
WHERE rownum = 1
Обновление:
Для выбора результатов в компании:
SELECT value - nextvalue AS diff
FROM (
SELECT m.*,
LEAD(value) OVER (PARTITION BY companyId ORDER BY date DESC) AS nextvalue,
ROW_NUMBER() OVER (PARTITION BY companyId ORDER BY date DESC) AS rn
FROM mytable m
)
WHERE rn = 1
-121--5086372- Необходимо удалить данные за скрытыми ячейками из источника данных табличного представления.
Например, при использовании массива, когда происходит действие, которое приводит к скрытию ячейки, объект для этой строки удаляется из массива. Затем, в качестве источника данных табличного представления, массив возвращает на одну единицу меньше общего количества и возвращает только допустимые ячейки для каждой строки в этом числе (без нуля).
Этот подход может потребовать сохранения второго массива со всеми объектами (включая скрытые).
Чтобы обновить представление, извлеките reloadRowsAtIndexPaths: weyRowAnimation: .
До того, как называется CellforlaTindexPath, NumberofRowsIncision вызывается. Вы должны вернуть соответствующее значение ячеек в разделе там, поэтому, если вы хотите только показать 1 ячейку, вернуть один. Логика, какие клетки показаны, должны быть реализованы частично в обоих методах
[tableView beginUpdates];
[tableView deleteRowsAtIndexPaths:withRowAnimation:]; // or insertRowsAtIndexPaths:withAnimation:
[tableView endUpdates];