У меня есть несколько таблиц (сгруппированного стиля) в моем приложении для iPhone (только на части экрана и добавлено с помощью интерфейсного строителя , хотя, не подклассный от UitableViewController ), что 80% времени невелики и подойдет на экране. Когда таблица подходит на экране, я хотел бы отключить прокрутку, чтобы сделать его немного чище. Но если таблица выходит из экрана (когда к нему добавлены строки), я бы хотел снова прокрутить прокрутку (потому что в противном случае вы не можете увидеть этот контент.) < /P>
есть ли способ это сделать? Кажется, я не могу понять. Я знаю, чтобы сделать: < /p>
Код: Выделить всё
tableView.scrollEnabled = NO;
< /code>
Но я не уверен, где, или если мне нужно вычислить размер объекта таблицы или что -то в этом роде, чтобы заставить это работать. < /p>
update < /strong>:
Вот решение, которое наконец сработало для меня: < /p>
if (table.contentSize.height < table.frame.size.height) {
table.scrollEnabled = NO;
}
else {
table.scrollEnabled = YES;
}
< /code>
Я запускаю этот код после вызова reloaddata < /code> в таблице, и он вычисляет правильные размеры и, по -видимому, работает. < /p>
table.frame.size.height
- это фактический размер объекта (вы можете увидеть это в интерфейсном строительстве ), отображаемого на экране, тогда как Table.contentsize.height - это высота: заголовок, нижний колонтитул и высота каждой ячейки, добавленной вместе.>
Подробнее здесь:
https://stackoverflow.com/questions/741 ... -the-scree