Estou usando por RecyclerView
dentro NestedScrollView
e funciona. Mas quando eu uso RecyclerView
dentro LinearLayout
ou algo assim, ele rola em várias velocidades dependendo do gesto. A rolagem escuta o gesto e, se eu deslizar para cima apenas um pouco, ela rola um pouco, enquanto se eu deslizar para cima muito rápido, ela rola muito rápido. Agora meu problema é que certamente rolar por RecyclerView
dentro, NestedScrollView
mas a rolagem rápida não funciona. No entanto, deslizo para cima rápido ou devagar, RecyclerView
ou NestedScrollView
apenas rolo um pouco.
Como posso fazer com que minha NestedScrollView
ou RecyclerView
dentro dessa visualização de rolagem role em várias velocidades?
android
android-recyclerview
android-nestedscrollview
Aung Si Min Htet
fonte
fonte
Respostas:
experimentar
fonte
Por padrão,
setNestedScrollingEnabled
funciona apenas após API-21.Você pode usar
ViewCompat.setNestedScrollingEnabled(recyclerView, false);
para desativar a rolagem aninhada para antes e depois da API-21 (Lollipop). Link para a documentação .Espero que esta ajuda!
fonte
Eu estava trabalhando no Android 16, onde não era possível usar o método setNestedSCrollEnabled,
O que acabo fazendo para impedir que o RecyclerView manipule Scrolls.
Como em LinerLayoutManager, criei canScrollHorizontally e canScrollVertically para retornar false por padrão.
fonte
Após várias iterações, encontrei uma solução.
Se você estiver usando o RecyclerView, então:
Se você estiver usando LinearLayout dentro de NestedScrollingView, pegue o LinearLayout dentro de um ScrollView normal e defina sua rolagem para
fonte
android: overScrollMode = "nunca
fonte
Você pode usar ScrollView com a classe ExtendRecyclerView que substitui o método onMeasure. Isso funciona para mim!
fonte
Será útil às vezes. Mas não é aconselhável para todos os momentos, porque desativa o recurso de reciclagem de visualização na visualização do recilador.
Alternativas:
Experimente CollapsiveToolbarLayout com a visualização Recycler. colocar outras visualizações no layout collapsiveTollbar.
fonte
Eu também conheci esse problema. E atualize para
26.1.0
consertá-lo.fonte
No meu caso, coloquei todas as imagens na pasta drawable em vez da pasta drawable-xxxhdpi, por isso a interface do usuário da tela está atrasada.
fonte
Você deve envolver a visualização do reciclador em qualquer layout como LinearLayout e definir o tamanho do RecyclerView como constante, como 800 dp. Isso permitirá a rolagem suave e a visualização do reciclador ainda exibirá as visualizações do reciclador durante a rolagem.
fonte
Este é WAI. O NestedScrollView mede seus filhos com a especificação "Não especificada". A criança também pode crescer o quanto quiser.
Isso basicamente equivale à altura de NSV e RV. Portanto, no que diz respeito ao RV, ele acredita que está completamente exposto.
Envolva seu RV com um LL e dê altura a ele. O LL não definiria a especificação de medida como NÃO ESPECIFICADA, de modo que o RV rolaria corretamente dentro de sua altura definida de quaisquer DPs fornecidos.
A única desvantagem deste método é que você não será capaz de fazer uma correspondência dos pais em seu RV.
fonte