Если ширина ячеек является динамичной содержанием, необходимо точно высчитать его и затем возвратить значение высоты, прежде чем ячейка будет представлена. Простой способ состоит в том, чтобы определить метод подсчета в коде ячейки табличного представления для контроллера для захода в метод делегата высоты ячейки таблицы. Не забывайте высчитывать реальная ширина кадра ячейки (значение по умолчанию 320), если высота, полагаются на ширину таблицы или экрана. Таким образом, в методе делегата высоты ячейки таблицы, используйте cell.frame, чтобы исправить ширину ячеек сначала, затем назвать метод высоты подсчета определенным в ячейке, чтобы получить подходящее значение и возвратить его .
пз. Код для генерации объекта ячейки мог быть определен в другом методе для другого метода делегата ячейки табличного представления звонить.
Определенно PEP 8 , Руководство по стилю для Python.
Хотя Python невероятно интуитивно понятен, многие люди это делают. не понимает его философии.
]Pep 20 : Дзен Python
- Красивое лучше, чем уродливое.
- Явное лучше, чем неявное.
- Простое лучше, чем сложное.
- ] Сложный лучше, чем сложный
- Плоский лучше, чем вложенный. это.
- Хотя этот путь может быть неочевиден сначала, если вы не голландец.
- Сейчас лучше, чем никогда.
- Хотя никогда не бывает лучше, чем прямо сейчас.
- Если реализацию трудно объяснить, это плохая идея.
- Если реализацию легко объяснить, это может быть хорошей идеей.
- Пространства имен - одна отличная идея - давайте сделаем их больше!
Теперь это ретроспектива, но все же интересно: я думаю, что Вещи, которые не изменятся в Python 3000 - это хорошее прочтение с множеством ссылок на обсуждения, которые предшествовали решения.
Я обнаружил, что чтение отклоненных ответов может дать хорошее представление о том, что такое Pythonic, а что нет. Это было довольно давно, поэтому у меня нет конкретных примеров.