android: ScrollView vs NestedScrollView



в чем разница между ScrollView и NestedScrollView на самом деле ? Я использовал их обоих. Оба они, extend FrameLayout. Я хочу знать подробно плюсы и минусы обоих из них. Если кто-нибудь может мне помочь. Спасибо.

611   4  

4 ответов:

NestedScrollView как следует из названия, используется, когда есть необходимость в прокрутке внутри другого прокрутки. Обычно это было бы трудно сделать, так как система не сможет решить, какой вид прокручивать.

вот тут NestedScrollView приходит.

NestedScrollView

NestedScrollView это просто как представление ScrollView, но он поддерживает исполняющий обязанности оба вложенных прокрутки родителя и ребенка на новых и старых версиях из Андроида. Вложенная прокрутка включена по умолчанию.

https://developer.android.com/reference/android/support/v4/widget/NestedScrollView.html

ScrollView

контейнер макета для просмотра иерархия, которую можно прокрутить с помощью пользователь, что позволяет ему быть больше, чем физический дисплей. Один ScrollView-это FrameLayout, то есть вы должны поместить в него одного ребенка содержащий все содержимое для прокрутки; этот ребенок может быть менеджер компоновки со сложной иерархией объектов

https://developer.android.com/reference/android/widget/ScrollView.html

в дополнение к вложенные прокруткиNestedScrollView добавлена одна основная функциональность, которая может даже сделать его интересным вне вложенных контекстов: он имеет встроенную поддержку OnScrollChangeListener. Добавление OnScrollChangeListener в оригинале ScrollView ниже API 23 требуются подклассы ScrollView или возиться с ViewTreeObserver на ScrollView что часто означает даже больше работы, чем подклассы. С NestedScrollView Это можно сделать с помощью строить-в сеттер.

помимо преимуществ, перечисленных в приведенных ответах, еще одним преимуществом NestedScrollView над ScrollView является его совместимость с CoordinatorLayout. ScrollView не взаимодействует с CoordinatorLayout. Вы должны использовать NestedScrollView, чтобы получить "прокрутку вне экрана" поведение для панели инструментов.

панель инструментов не свернется с Scrollview как дочерний элемент CoordinatorLayout

Comments

    Ничего не найдено.