Где прочитать предоставленное значение высоты в UITableViewCell? - PullRequest
0 голосов
/ 21 апреля 2010

Я сделал подкласс UITableViewCell, и теперь я хочу, чтобы этот подкласс был «умным». Он должен выровнять его содержимое по высоте строки. Но для этого ячейка должна знать, какое значение высоты было предоставлено для этого метода:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath

Однако, независимо от того, какое значение я назначу здесь, размер моей ячейки составляет 44 пикселя во время инициализации (стиль по умолчанию). Есть ли способ получить это значение из ячейки во время инициализации?

Ответы [ 3 ]

1 голос
/ 22 апреля 2010

Вы можете вызвать heightForRowAtIndexPath самостоятельно, чтобы установить фрейм ячейки, если вся логика высоты находится в этом методе.

1 голос
/ 22 апреля 2010

Я предполагаю, что вы загружаете данные в фоновом режиме Поскольку в начале данных нет, он не будет вызывать heightForRowAtIndexPath, поэтому он использует стиль ячейки по умолчанию с 44px и белым фоном.

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

1 голос
/ 22 апреля 2010

Возвращает необходимую высоту строки из heightForRowAtIndexPath. Кроме того, в своем подклассе UITableViewCell убедитесь, что вы установили правильную высоту кадра для своей ячейки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...