Как временно скрыть или удалить UITableViewCell с его содержимым
У меня есть статика UITableView
и хочу скрыть ячейку таблицы (именно я хочу скрыть указатель даты в ячейке). Я хочу сделать это в heightForRowAtIndexPath
метод:
public override float GetHeightForRow (UITableView tableView, NSIndexPath indexPath)
{
float height = this.TableView.RowHeight;
if (indexPath.Row == 5 || indexPath.Row == 7) {
height = 0.0f;
}
return height;
}
Когда я делаю это, содержимое ячейки перекрывается с другим содержимым. В моем случае средство выбора даты занимает весь экран. То же самое касается этикеток и так далее. Также кажется, что разделительная линия все еще там.
Как временно удалить или скрыть ячейку с ее содержимым?
Вы не должны предоставлять C#
решение. Я переведу это сам. Кстати: я использую iOS 7.1
3 ответа
Отметьте "Клип подпредставлений" на свою ячейку в IB. не для "Просмотр содержимого" ячейки.
Чтобы архивировать это с помощью кода:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [super tableView:tableView cellForRowAtIndexPath:indexPath];
if(indexPath.row == 5 || indexPath.row == 7) {
cell.clipsToBounds = YES;
}
return cell;
}
Я рекомендую вам обновить метод
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
if (indexPath.Row == 5 || indexPath.Row == 7) {
return 0.0f;
}
return 50; // some static value
}
Я надеюсь, что это решит вашу проблему.
Я бы попытался уменьшить numberOfRowsInSection:
и рассмотреть это в cellForRowAtIndexPath:
, но я не уверен на 100%, работает ли это.