Rolagem em NSTableView
-
07-07-2019 - |
Pergunta
Eu não estou perguntando como fazer isso, é mais na linha de "O que você chama isso?".
Eu tenho um NSTableView com várias células personalizadas. Eu quero a tabela para a linha de rolagem por linha, o que significa que quando eu mover a barra de rolagem até eu quero a linha superior a desaparecer e quando eu movê-lo para baixo Eu quero a linha inferior também a desaparecer - Eu não quero ver metade do meu celular .
Como você chama este tipo de comportamento? E você pode compartilhar algumas dicas se você implementou-lo em um NSTableView?
Solução
Eu não sei exatamente o que isso seria chamado (talvez algo como "restrito rolagem"?), Mas você pode fazê-lo usando o método NSView
de -adjustScroll:
.
A abordagem geral é que você precisa para fazer uma subclasse de NSTableView
(se você não tiver um), e substituir esse método para retornar um NSRect
que tem o seu valor origin.y
constrangido a um múltiplo de sua altura da linha.
Você provavelmente também querem usar NSScrollView
de -setVerticalLineScroll:
para definir a quantidade adequada de rolagem quando o usuário clicar nas setas de rolagem na barra de rolagem vertical. Você pode obter o scrollView chamando -enclosingScrollView
em seu tableView.