1

ほとんどのソーシャルメディアのプロフィールページのようにレイアウトするために私の頭にはこのビジョンがあります。私のレイアウトでは、listViewが入っていて、アダプターで膨らんでいるViewPagerがあります。このViewPagerコンテナを基本的にレイアウトの残りの部分を「プッシュ」させるにはどうしたらいいですか?たとえば、これは私のレイアウトの一部です:スクロールでViewPagerを全画面にアニメーション化

<android.support.design.widget.AppBarLayout 
    android:id="@+id/appBarLayout" 
    android:layout_width="match_parent" 
    android:layout_height="30dp" 
    android:background="@color/colorPrimary"> 

    <android.support.design.widget.TabLayout 
     android:id="@+id/tabs" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     app:tabMode="fixed"> 

     <android.support.design.widget.TabItem 
      android:id="@+id/tabItem1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Posts" /> 

     <android.support.design.widget.TabItem 
      android:id="@+id/tabItem2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Animals" /> 
    </android.support.design.widget.TabLayout> 
</android.support.design.widget.AppBarLayout> 


<android.support.v4.view.ViewPager 
    android:id="@+id/viewPager_container" 
    android:layout_width="0dp" 
    android:layout_height="0dp" 
    android:layout_marginEnd="8dp" 
    android:layout_marginStart="8dp" 
    android:layout_marginTop="8dp" 
    app:layout_constraintBottom_toBottomOf="parent" 
    app:layout_constraintEnd_toEndOf="parent" 
    app:layout_constraintStart_toStartOf="parent" 
    app:layout_constraintTop_toBottomOf="@+id/profile_imageView"> 


</android.support.v4.view.ViewPager> 

私はViewPagerコンテナは上向きにスクロールするとフルスクリーンするために膨張させ、その後のFacebook、Instagramの、Twitterのように、ダウンスクロールに正常に戻って行くのであるたいすべてやりますプロフィールページにどのようにこの問題にアプローチするか分からないので、どんなヘルプ/リンクも大いに感謝されます。

もう少しブレーンストーミングしたら、ViewPagerの高さをmatch_parentにするアニメーションについて考えました。スクロールと共にViewPagerの高さを変更するアニメーションはありますか?

答えて

1

これを試してみてください。その働き。折りたたみツールバーのレイアウトを使用し、タブをスクロール可能にします。

 <?xml version="1.0" encoding="utf-8"?> 

     <RelativeLayout 
     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:background="#FAFAFB"> 

     <android.support.design.widget.AppBarLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:theme="@style/AppTheme.AppBarOverlay" 
     app:elevation="0dp" 
     android:id="@+id/id_toolbar_container" 
     android:background="#ffffff"> 


     <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     android:background="@android:color/white" 
     app:layout_collapseMode="pin" 
     app:layout_scrollFlags="scroll|exitUntilCollapsed"> 
      <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:orientation="horizontal" 
      > 
      <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center_vertical"> 

      <ImageView 
       android:id="@+id/ivbackarrow" 
       android:layout_height="30dp" 
       android:layout_width="30dp" 
       android:padding="4dp" 
       android:src="@mipmap/iconback" 
       android:layout_centerVertical="true" 

       /> 

      <ImageView 
       android:id="@+id/ivmap" 
       android:layout_width="30dp" 
       android:layout_height="30dp" 
       android:layout_toLeftOf="@+id/ivfilter" 
       android:padding="5dp" 
       android:layout_centerVertical="true" 
       android:src="@drawable/iconmap" 
       android:layout_marginRight="15dp" 
       android:visibility="visible" /> 
      <ImageView 
       android:id="@+id/ivfilter" 
       android:layout_width="35dp" 
       android:layout_height="35dp" 
       android:layout_alignParentRight="true" 
       android:padding="5dp" 
       android:src="@drawable/iconfilter" 
       android:layout_centerVertical="true" 

       android:visibility="visible" 

       android:layout_marginRight="15dp"/> 

     </RelativeLayout> 
     </LinearLayout> 


    </android.support.v7.widget.Toolbar> 
    </android.support.design.widget.AppBarLayout> 
    <android.support.design.widget.CoordinatorLayout 
     android:id="@+id/main_content" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_below="@id/id_toolbar_container"> 



     <android.support.design.widget.AppBarLayout 
      android:id="@+id/id_appbar" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:background="#ffffff"> 

     <android.support.design.widget.CollapsingToolbarLayout 
     android:layout_width="match_parent" 
     android:layout_height="185dp" 
     app:layout_scrollFlags="scroll|enterAlways"> 
     <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 


      <TextView 
       android:id="@+id/welcomeText" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="Results for" 


       android:textSize="14sp" 
       android:textAllCaps="true" 
       android:letterSpacing="0.05" 

       android:layout_centerHorizontal="true" 

       android:layout_marginBottom="20dp" 
       android:layout_marginTop="30dp" 
       android:textColor="@color/colorTitleText"/> 
      <me.grantland.widget.AutofitTextView 
       android:id="@+id/location" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="Egg plant" 
       android:layout_below="@+id/welcomeText" 
       android:layout_centerVertical="true" 
       android:layout_centerHorizontal="true" 
       android:layout_gravity="center_horizontal" 
       android:gravity="center_horizontal" 
       android:textSize="@dimen/verybiglargetextsize" 
       android:layout_marginLeft="10dp" 
       android:layout_marginRight="10dp" 

       android:layout_marginBottom="30dp" 
       android:textColor="#22262A"/> 

     <android.support.design.widget.TabLayout 
      android:id="@+id/tabs" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      app:tabMode="fixed" 
      android:layout_below="@+id/location" 
      app:layout_scrollFlags="scroll|enterAlways" 
      android:layout_marginLeft="30dp" 
      android:layout_marginRight="35dp" 
      app:tabIndicatorHeight="0dp" 
     app:tabIndicatorColor="#22262A"/> 


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

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

    <android.support.v4.view.ViewPager 
    android:id="@+id/viewpager" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" 
    android:background="#FAFAFB"/> 
    </android.support.design.widget.CoordinatorLayout> 

    </RelativeLayout> 
関連する問題