2015-10-02 11 views
11

Google Play veya Whatsapp'in İletişim profili gibi, hoş bir solma etkisi ile Daraltılabilir Araç Çubuğuyla Etkinlik oluşturmak için Android Tasarım Destek Kitaplığı'nı kullanıyorum. Sonunda etkinlik düzenini koyacağım ama bu sadece Araç Çubuğu < -> Görüntü solma efekti oluşturmak için AppBarLayout için bir ImageView eklediğiniz varsayılan Katlanabilir Etkinlik düzenini akılda tutmaktadır.Android Collapsing Toolbar, Google Play Uygulaması gibi atalet kullanmayan

bu uygulamasıyla Benim sorunum 2 belirtileri olarak kendini göstermektedir

Ben açıklayacağız:

  • Ben kaydırma Araç genişleyen önce durur hızlı tokatlamak hızla yukarı kaydırma istediğinizde etkinlik içeriği uzundur . Devam etmesini istiyorum, benim NestedScrollView'emin alt kısmında olduğumda ve hızlı bir şekilde parmağım tokatlamak için yaptığım tüm aktivitelerin üstüne giderken bu kaydırma işlemini gidip Araç Çubuğunu genişletmek istiyorum. Google Play uygulaması davranır veya Whatsapp'ın profili çalışır.

  • Benzer şekilde, Araç Çubuğu genişletildiğinde kaydırma için atalet yok, hızlı bir aşağı kaydırma işlemi küçücük bir kaydırma yapacak, yine bu Google Play veya Whatsapp profilinin nasıl davrandığı değil. Araç Çubuğu daraltıldığında, kaydırma işlemi her zaman ScrollViews, ListViews, vs.'de olduğu gibi davranır. Hızlı bir kaydırma, alt veya üst kısımda gitmenizi sağlar (çok fazla içerik olmadıkça).

Tanımladığım davranış Tasarım Desteği Kitaplığı tarafından destekleniyor mu?

activity.xml:

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.CoordinatorLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" 
    tools:context=".ScrollingActivity"> 

    <android.support.design.widget.AppBarLayout 
     android:id="@+id/app_bar" 
     android:fitsSystemWindows="true" 
     android:layout_height="@dimen/app_bar_height_custom" 
     android:layout_width="match_parent" 
     android:theme="@style/AppTheme.AppBarOverlay"> 

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

      <ImageView 
       android:src="@drawable/cuthbert" 
       app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:scaleType="centerCrop" 
       app:layout_collapseMode="parallax" 
       android:minHeight="100dp"/> 

      <android.support.v7.widget.Toolbar 
       android:id="@+id/toolbar" 
       android:layout_height="?attr/actionBarSize" 
       android:layout_width="match_parent" 
       app:layout_collapseMode="parallax" 
       app:layout_scrollFlags="scroll|enterAlways" 
       app:popupTheme="@style/AppTheme.PopupOverlay" /> 
     </android.support.design.widget.CollapsingToolbarLayout> 
    </android.support.design.widget.AppBarLayout> 

    <include layout="@layout/content_scrolling"/> 

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/fab" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="@dimen/fab_margin" 
     app:layout_anchor="@id/app_bar" 
     app:layout_anchorGravity="bottom|end" 
     android:src="@android:drawable/ic_dialog_email"/> 

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

content_scrolling.xml: (özellikle tasarım 26.0.0 için

<android.support.design.widget.CollapsingToolbarLayout 
    app:expandedTitleMarginEnd="64dp" 
    app:expandedTitleMarginStart="48dp" 
    app:expandedTitleTextAppearance="@android:color/transparent" 
+1

Şimdi aşağı kaydırdığınızda, araç çubuğu tamamen gizlendiğinde kaydırma hareketleri (gecikmeler) duruyor ve kaydırma yapmaya devam etmek için başka bir harekete ihtiyacınız var (yukarı kaydırdığınızda aynı şey gerçekleşir)? –

+0

Kaydırdığımda davranış açıkladığınız gibi. Aşağı kaydırmak farklıdır, çünkü Genişletme Araç Çubuğu ile kaydırma mümkün değildir, ekrana dokunmayı bıraktığınız anda kaydırma durur. Sağlanan şablonu kullanarak Android Studio'da yeni bir Kaydırma Etkinliği oluşturmak size tam olarak tanımladığım bu davranışı verecektir. – dbar

+0

Herhangi bir geçici çözüm bulundu. Bu sorun bildirildi mi? – Raghunandan

cevap

0

deneyin destek kütüphanesi). Sonunda şikayetçi olduktan sonra bu sorunu düzelttiler.

0

Güncelleme destek kütüphaneleri: bu satırları eklemek için

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v4.widget.NestedScrollView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" 
    tools:showIn="@layout/activity_scrolling" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context=".ScrollingActivity"> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="@dimen/text_margin" 
     android:text="@string/large_text"/> 

</android.support.v4.widget.NestedScrollView> 
İlgili konular