tvOS Программно изменяя фокус одного UITableViewCell на другой - PullRequest
0 голосов
/ 05 сентября 2018

У меня есть приложение tvOS, в котором я использую пользовательские ячейки табличного представления, допустим, у меня есть 3 табличных ячейки. Теперь мне нужно программно обновить фокус с одной ячейки на другую. я попытался использовать func selectRow(at indexPath: IndexPath?, animated: Bool, scrollPosition: UITableViewScrollPosition), где он не выбирает эту ячейку (поскольку фокус все еще на предыдущей ячейке, а не на той, которую я хотел) Он прокручивается до определенной ячейки, но не меняет фокус

Так есть ли способ заставить фокус программно перейти от одной ячейки таблицы к другой?

Моя TableviewStucture как показано ниже

  • Первая ячейка: Обычная ячейка просмотра таблицы)
  • Вторая ячейка: UICollectionView внутри TableviewCell
  • Третья ячейка: обычная ячейка TableView

У меня есть ссылка на ячейку ячейки назначения, до которой нужно добраться.

  • Мне нужно изменить фокус с первой ячейки на третью,
  • или изменить фокус со второй ячейки на третью, В случае второй ячейки есть обратный вызов, который вызывается и имеют индекс конкретная ячейка тоже (cellForRow(at indexPath: IndexPath) -> UITableViewCell?).

Заранее спасибо.

1 Ответ

0 голосов
/ 08 мая 2019

Эту проблему можно решить с помощью indexPathForPreferredFocusedView, который работает просто отлично.

...