Подтвердить что ты не робот

Каковы новые вложенные API прокрутки для Android-L?

Я не могу найти эту информацию на https://developer.android.com/preview/api-overview.html

Спасибо!

4b9b3361

Ответ 1

Они не обращали большого внимания на эту замечательную новую функцию. Я занимался этим, и я думаю, что понял это. Все, что вам нужно сделать, это установить

android:nestedScrollingEnabled="true"

во вложенном (дочернем) прокручиваемом представлении, предполагая, что у вас есть где-то внутри другого. Это приводит к тому, что дочернее представление прокручивается до завершения, а затем разрешает его родительу потреблять оставшуюся часть прокрутки. Я обнаружил, что мне понравилось противоположное поведение лучше - родитель получает приоритет прокрутки, затем следует детский, поэтому я переопределяю метод onNestedScroll в ScrollView следующим образом:

@Override
public void onNestedScroll(View target, int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed) {
    //swap dyConsumed and dyUnconsumed
    super.onNestedScroll(target, dxConsumed, dyUnconsumed, dxUnconsumed, dyConsumed);
}

Вы должны использовать этот новый подкласс ScrollView для внешнего (родительского) ScrollView.

Ответ 2

В дополнение к ответу guyIntrepid не забудьте добавить onStartNestedScroll в свой собственный ScrollView или ViewPager и вернуть true.

@Override
public boolean onStartNestedScroll(View child, View target, int nestedScrollAxes){
   return true;
}