Я пытаюсь сделать левую-правую систему карточных карт (например, Tinder), где на карте есть NestedScrollView. Целью было бы в том, что если бы пользователь прокручивал вверх и вниз, NestedScrollView прокручивал бы, но если бы пользователь промахнулся влево или вправо, карта использовала бы это.Пропустить Android NestedScrollView горизонтальные прокрутки к родительскому Просмотр
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="4dp"
card_view:cardUseCompatPadding="true">
<android.support.v4.widget.NestedScrollView
android:id="@+id/nested_scroll_view"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="4dp">
<TextView
android:id="@+id/text_view"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
</android.support.v7.widget.CardView>
(Библиотека карт я использую https://github.com/wenchaojiang/AndroidSwipeableCardStack)
compile 'com.github.wenchaojiang:AndroidSwipeableCardStack:0.1.5'
Когда я положил margin_top на NestedScrollView и осязание в пределах этого края, то CardStack правильно захватывает мой вход и движется карты влево или но NestedScrollView захватывает мой вход независимо от направления, если я касаюсь и перетаскиваю где-нибудь еще.
Какой класс/onTouchEvent следует расширять/переопределять, чтобы иметь этот эффект, или может быть более простой подход?
Спасибо!
Я тоже пытаюсь понять это, принимая во внимание и пробовать ... 1) onInterceptTouch в родительском классе (шаги записи, может быть, и диспетчерские?) 2) модификации библиотеки для реализованного NestedChildHelper 2) Recyclerview с ItemTouchHelper .. До сих пор довольно жесткая. , Не уверен, что это важно, но до сих пор библиотеки, которые я пытаюсь сделать, - это метелки и перекладины. https://github.com/Meetic/Shuffle и https://github.com/flschweiger/SwipeStack – nAndroid
Использование одной из этих библиотек предпочтительнее, чем recyclerview b/c, они делают многое. – nAndroid
Я верю, что onInterceptTouchEvent() - это метод, который вы ищете. См. Https://developer.android.com/reference/android/view/ViewGroup.html#onInterceptTouchEvent(android.view.MotionEvent) –