Вопрос

Я не спрашиваю, как это сделать, это скорее в строке "Как бы вы это назвали?".

У меня есть NSTableView с несколькими пользовательскими ячейками. Я хочу, чтобы таблица прокручивала строку за строкой, а это означает, что когда я перемещаю полосу прокрутки вверх, я хочу, чтобы верхний ряд исчезал, а когда я перемещал его вниз, я хочу, чтобы нижний ряд также исчезал - я не хочу видеть половину своей ячейки. .

Как вы называете этот тип поведения? И можете ли вы поделиться некоторыми указателями, если вы реализовали это в NSTableView?

Это было полезно?

Решение

Я не совсем уверен, как это будет называться (возможно, что-то вроде " ограниченная прокрутка ??), но вы можете сделать это, используя NSView -adjustScroll: метод.

Общий подход заключается в том, что вам нужно создать подкласс NSTableView (если у вас его еще нет) и переопределить этот метод, чтобы вернуть NSRect , который имеет значение origin.y , кратное высоте вашей строки.

Возможно, вы также захотите использовать -setVerticalLineScroll: для NSScrollView , чтобы установить нужную сумму для прокрутки, когда пользователь нажимает стрелки прокрутки на вертикальной полосе прокрутки. Вы можете получить scrollView, вызвав -enclosingScrollView в вашем tableView.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top