10

Son zamanlarda Android Tasarım Desteği Kitaplığı kullandım ve çöken araç çubuğum için aşağıdaki koda sahibim.KoordinatörLoyutlandırılmamış NestedScrollView ve viewpager ile iyi çalışmıyor

<android.support.design.widget.CoordinatorLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    > 

    <android.support.design.widget.AppBarLayout 
     android:id="@+id/media_detail_appbar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
     > 

     <android.support.design.widget.CollapsingToolbarLayout 
      android:id="@+id/collapsing_toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      app:layout_scrollFlags="scroll|exitUntilCollapsed" 
      app:contentScrim="?attr/colorPrimary" 
      > 

      <include 
       layout="@layout/layout_card" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       /> 

      <android.support.v7.widget.Toolbar 
       android:id="@+id/media_detail_toolbar" 
       android:layout_width="match_parent" 
       android:layout_height="?attr/actionBarSize" 
       app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
       app:layout_collapseMode="pin" 
       /> 

     </android.support.design.widget.CollapsingToolbarLayout> 

    </android.support.design.widget.AppBarLayout> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior" 
     > 

     <android.support.design.widget.TabLayout 
      android:id="@+id/media_detail_tabs" 
      android:layout_width="match_parent" 
      android:layout_height="?android:attr/actionBarSize" 
      android:background="@color/blue_2" 
      app:tabMode="scrollable" 
      /> 

     <android.support.v4.view.ViewPager 
      android:id="@+id/view_pager" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      /> 

    </LinearLayout> 

</android.support.design.widget.CoordinatorLayout> 

Görünüm Çağrı Cihazı için iki parçam var. Biri NestedScrollView ve diğeri Recycler View'dir. Benim sorunum NestedScrollView, işte aşağıdaki kod.

<android.support.v4.widget.NestedScrollView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    > 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     > 
    </LinearLayout> 
</android.support.v4.widget.NestedScrollView> 

Sorunum Eğer görünümü yukarı kaydırırken, kısa sürede parmak tarafında biraz hareket ettikçe, bu görünüm çağrı cihazı için yatay kaydırma tetikler olmasıdır. Bundan kaçınmam için bana yardım edebilir misiniz? Yukarı ve aşağı kaydırdığımızda, görünüm çağrı cihazı tetiklenmemelidir. Benim geri dönüşümcüsüm görünümünde iyi çalışıyor. Teşekkürler.

+0

Bu sorun için herhangi bir çözüm buldunuz mu? – dgngulcan

cevap

1

Ben bu kütüphanelerin

compile 'com.android.support:appcompat-v7:23.1.1' 
compile 'com.android.support:design:23.1.1' 

son sürümü ile aynı düzeni denedik ve iyi beklendiği gibi çalışır, yani: jest ağırlıklı dikey kaydırma (hatta çapraz) NestedScrollView olduğunu

eğer Kaydırma tetikler, aksi halde hareket ağırlıklı yatay kaydırma (en az dikey boşlukla bile olsa) ViewPager kaydırmayı tetikler. Kütüphanelerinizi yükseltmek için.

+0

23.1.1 destek kitaplıklarını kullanmamama rağmen, kaydırdığımda, 0,5 saniye dikey olarak hareket eder ve ardından yatay olarak devam eder. Hala kaydırırken ekseni değiştirir – dgngulcan