Я пытаюсь понять, как фокус работает, когда у меня есть кнопка внутри таблицы.UIButton focus в UITableView
Целью является создание представления таблицы с пользовательской ячейкой, размер которой равен размеру таблицы (я хочу видеть только одну ячейку в то время). Когда кнопка фокусируется, я хочу прокручивать (представление таблицы делает это автоматически), в следующую ячейку и видеть только следующую ячейку. Я убедился, что кнопка будет находиться в фокусе, а не ячейки просмотра таблицы, путем переопределения этого метода в таблице ячейки:
override var canBecomeFocused: Bool{
return false
}
Кнопка сфокусирован и когда я пальцем вверх/вниз, фокус перемещается между кнопками, а не Table it self (большой успех) ... НО, просмотр таблицы автоматически прокручивается, и я хочу понять, почему в некоторых случаях (когда таблица и таблица Cell больше 360 пикселей), это прокрутка к следующей ячейке, и я могу видеть только следующую ячейку (вид таблицы и ячейку того же размера), а иногда (когда таблица и ячейка меньше, чем 360 пикселей), просмотр таблицы немного немного, пока в следующей ячейке отображается только кнопка (это означает, что ячейка не отображается полностью)
Итак, у меня есть:
клеток и размер таблицы вид ячейки являются Greater затем 360, мы можем видеть, что, когда кнопка находится в фокусе, вид таблицы прокрутки в центре ячейки, и мы можем видеть только 1 клетка:
размер ячейки и вид ячейки таблицы меньше, то 360, то можно увидеть, что, когда кнопка находится в фокусе, вид таблицы прокрутки в какой-то момент, когда кнопка показана
FYI: Я думаю, что размер кнопки не влияет на прокрутку, только просмотр таблицы и размер ячейки таблицы влияют на прокрутку.
Кто-нибудь? Есть идеи ?
This is the test Project: для того, чтобы увидеть это лучше, пожалуйста, изменить размер вид таблицы и размер ячейки, чтобы быть меньше, чем 360, и убедитесь, что UIButton центрируется: Project
С трудом изображая вашу проблему. Это ясно, пока вы не получите часть «НО». У меня есть пара идей, в которых это может произойти, но больше информации было бы полезно. – rottenoats
hey @rugdealer Я постараюсь объяснить это лучше. когда я прокручиваю вверх/вниз по экрану таблицы, прокрутите до следующей кнопки, которая должна быть фокусом. если я изменил размер табличного вида на 360 и выше, представление таблицы перейдет к следующей кнопке, и ячейка будет центрирована. если я изменил размер табличного вида на меньший, чем 360, представление таблицы будет прокручиваться до следующей кнопки, и ячейка не будет центрирована. В общем, цель состоит в том, чтобы увидеть только 1 ячейку после салфетки. – Sosily