Установка contentInset collectionView, который содержит tableView - PullRequest
0 голосов
/ 16 ноября 2018

Моя ситуация такова, что у меня есть collectionView, который имеет два типа ячеек. Первый тип ячейки представляет собой простой редактируемый UITextField, затем второй содержит UITableView с редактируемыми UITextFields внутри его ячеек.

Моя проблема в том, что когда клавиатура появляется из-за текстовых полей внутри ячейки табличного представления, и я меняю contentInset, изменение не происходит.

Это код, который я использую для изменения вставок, когда появляется клавиатура, и тот же код, когда выбирается текстовое поле в ячейке представления коллекции, что работает.

self.view.setNeedsLayout() 
self.collectionView.contentInset.bottom = inset
self.view.layoutIfNeeded()

Должно быть что-то, о чем я не могу думать, что препятствует изменению contentInsets.

У меня также есть пользовательский UICollectionViewLayout, хотя я не думаю, что это имеет значение, поскольку это касается только содержимого collectionView, а не вставок.

Любая помощь будет высоко ценится.

1 Ответ

0 голосов
/ 18 ноября 2018

Оказывается, причина, по которой он работал, заключалась в том, что ячейка с текстовым представлением выполняла некоторую магическую автопрокрутку, в то время как ячейка с текстовым представлением табличного представления не была, я предполагаю, как это было далеко вложенным в стек представления чтобы справиться с этим.

Мое исправление состояло в том, чтобы настроить contentOffset так, чтобы вызвать прокрутку.

...