Убрать индикаторы прокрутки UITableView в tvOS

Вопрос:

Как удалить вертикальные светящиеся индикаторы прокрутки в TableView (или изменить его цвет)?

Описание:

Поскольку UITableView является подклассом UIScrollView, я пытался найти причину этого . Я попытался отключить индикаторы прокрутки с помощью раскадровки и кода следующим образом:

//Where self is my TableViewController
self.tableView.showsVerticalScrollIndicator = false

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

Изображение:

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

Изменить: что я пробовал:

Я попытался изменить:

self.tableView.contentInsets
self.tableView.scrollIndicatorInsets
self.tableView.indicatorStyle = UIScrollViewIndicatorStyle.black

person kemicofa ghost    schedule 29.11.2016    source источник
comment
Один из хакерских способов сделать это - убедиться, что рамка вашей таблицы больше, чем ее контейнер (для которого clipToBounds должен быть установлен в значение true) на величину, которая скроет затухающую часть, а затем добавить такое же смещение к contentInset.bottom и / или contentInset.top.   -  person Mihai Fratu    schedule 04.12.2016
comment
@MihaiFratu Я пошел дальше и попробовал, похоже, не сработало.   -  person kemicofa ghost    schedule 05.12.2016


Ответы (1)


Возможно, вы ищете свойство self.tableView. View:

Необязательное представление, альфа-канал которого используется для маскировки содержимого представления. Альфа-канал представления определяет, насколько просматривается контент и фон представления. Полностью или частично непрозрачные пиксели позволяют отображать нижележащее содержимое, но полностью прозрачные пиксели блокируют это содержимое.

Как сказано в документации, это необязательный вид, просто установите для него nil:

self.tableView.mask = nil

Вывод:

Перед для настройки mask просмотра nil должно быть следующее:

введите здесь описание изображения

После установки для mask вида nil должно быть следующее:

введите здесь описание изображения

Примечание в строке:

По сравнению с iOS кажется, что mask представление nil -по умолчанию-, но не с tvOS. Я попробовал их оба, и результаты журнала были:

Для iOS:

ноль

Для tvOS:

Необязательно (‹_ UIScrollViewGradientMaskView: 0x7ff078c037f0; frame = (-90-40; 1101 1200); userInteractionEnabled = NO; layer =>)

person Ahmad F    schedule 05.12.2016
comment
Вау, я потратил два рабочих дня, пытаясь решить эту проблему. В голову не приходило доработать маску. Большое спасибо ! - person kemicofa ghost; 05.12.2016