Как рассчитать высоту ячейки в виде таблицы в Swift? ⇐ IOS
-
Anonymous
Как рассчитать высоту ячейки в виде таблицы в Swift?
Я хочу сделать определенную ячейку в представлении таблицы закрепленной, и для этого я создал заголовок, который появляется, когда ячейка вот-вот исчезнет, и остается вверху, примерно так
func ScrollViewDidScroll (_ ScrollView: UIScrollView) { пусть offsetY = ScrollView.contentOffset.y if offsetY >= rectOfInfoCouponsAvailable { если StickyHeaderView == ноль { StickyHeaderView = UIView(frame: CGRect(x: 0, y: 0, ширина: tableView.frame.width, высота: 100)) view.addSubview(stickyHeaderView!) настроитьStickyHeaderView() } } еще { StickyHeaderView?.removeFromSuperview() StickyHeaderView = ноль } } В настоящее время я присваиваю постоянное значение rectOfInfoCouponsAvailable, но оно работает не на всех устройствах. Я хотел бы, чтобы это значение было высотой, на которой становится видимой конкретная ячейка. Как я могу динамически вычислять эту высоту на основе содержимого устройства или таблицы?
Я пробовал использовать следующий код, но он работает неправильно, поскольку всегда возвращает 0:
let indexPath = IndexPath(строка: 2, раздел: 0) если let rectForCell = tableView.rectForRow(at: indexPath) { пусть rectOfInfoCouponsAvailable = rectForCell.size.height } Будем очень признательны за любую помощь или предложения. Заранее спасибо за помощь!
Я хочу сделать определенную ячейку в представлении таблицы закрепленной, и для этого я создал заголовок, который появляется, когда ячейка вот-вот исчезнет, и остается вверху, примерно так
func ScrollViewDidScroll (_ ScrollView: UIScrollView) { пусть offsetY = ScrollView.contentOffset.y if offsetY >= rectOfInfoCouponsAvailable { если StickyHeaderView == ноль { StickyHeaderView = UIView(frame: CGRect(x: 0, y: 0, ширина: tableView.frame.width, высота: 100)) view.addSubview(stickyHeaderView!) настроитьStickyHeaderView() } } еще { StickyHeaderView?.removeFromSuperview() StickyHeaderView = ноль } } В настоящее время я присваиваю постоянное значение rectOfInfoCouponsAvailable, но оно работает не на всех устройствах. Я хотел бы, чтобы это значение было высотой, на которой становится видимой конкретная ячейка. Как я могу динамически вычислять эту высоту на основе содержимого устройства или таблицы?
Я пробовал использовать следующий код, но он работает неправильно, поскольку всегда возвращает 0:
let indexPath = IndexPath(строка: 2, раздел: 0) если let rectForCell = tableView.rectForRow(at: indexPath) { пусть rectOfInfoCouponsAvailable = rectForCell.size.height } Будем очень признательны за любую помощь или предложения. Заранее спасибо за помощь!
Мобильная версия