使用NestedScrollView移动视图

时间:2017-05-17 11:33:47

标签: android user-interface material-design android-animation

我正在开发一个应用程序,我AppBarLayout使用CollapsingToolbarLayoutNestedScrollView。我已成功实现了这一点并且工作正常。

现在我要做的是将白色圆圈移动得比背景更快,同时减小它的大小,使其在崩溃时适合Toolbar内部。同时,这些搜索和设置按钮通过滚动淡入/淡出,当它完全折叠时,我想将它们显示为MenuItems

这是图像 Here's the Image

到目前为止我做了什么:

  1. 我可以在MenuItem折叠/展开时显示/隐藏。
  2. 我能够为视图提供视差效果。
  3. 探索许多图书馆,但无法找到我想做的任何线索。
  4. 我需要什么:

    1. 任何指示/指示如何操作或在何处查找。
    2. 以下是我的xml文件,供有人参与。

      非常感谢任何帮助。

      <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=".activities.HomePage">
      
          <android.support.design.widget.AppBarLayout
              android:id="@+id/appBar"
              android:layout_width="match_parent"
              android:layout_height="300dp"
              android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
              android:background="@color/background"
              android:fitsSystemWindows="true">
      
              <android.support.design.widget.CollapsingToolbarLayout
                  android:id="@+id/collapsingToolbar"
                  android:layout_width="match_parent"
                  android:layout_height="match_parent"
                  app:layout_scrollFlags="scroll|exitUntilCollapsed"
                  android:fitsSystemWindows="true"
                  app:expandedTitleMarginStart="48dp"
                  app:expandedTitleMarginEnd="64dp">
      
                  <RelativeLayout
                      android:layout_width="match_parent"
                      android:layout_height="wrap_content"
                      app:layout_collapseMode="parallax"
                      app:layout_collapseParallaxMultiplier="0.7">
      
                      <ImageView
                          android:id="@+id/imgBackground"
                          android:layout_width="match_parent"
                          android:layout_height="wrap_content"
                          android:src="@drawable/main_menu_topbg"
                          android:scaleType="fitXY"
                          android:background="@color/background"
                          android:contentDescription="@string/background"/>
      
                      <ImageView
                          android:id="@+id/imgLogo"
                          android:layout_width="wrap_content"
                          android:layout_centerHorizontal="true"
                          android:layout_height="150dp"
                          android:layout_marginTop="-75dp"
                          android:layout_below="@+id/imgBackground"
                          android:src="@drawable/logo_circle"
                          android:contentDescription="@string/logo"/>
      
                  </RelativeLayout>
      
      
                  <android.support.v7.widget.Toolbar
                      android:id="@+id/toolbar"
                      android:layout_width="match_parent"
                      android:layout_height="?attr/actionBarSize"
                      app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
                      app:layout_collapseMode="pin">
      
                  </android.support.v7.widget.Toolbar>
              </android.support.design.widget.CollapsingToolbarLayout>
          </android.support.design.widget.AppBarLayout>
      
          <android.support.v4.widget.NestedScrollView
              android:id="@+id/nestedScrollView"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:background="@color/background"
              app:layout_behavior="@string/appbar_scrolling_view_behavior">
      
      
              <android.support.v7.widget.RecyclerView
                  android:id="@+id/rcyHomePage"
                  android:layout_width="match_parent"
                  android:layout_height="wrap_content"
                  android:layout_below="@+id/imgLogo"
                  android:paddingTop="4dp"
                  android:paddingBottom="50dp"
                  android:divider="@android:color/transparent"
                  android:background="@color/background"/>
      
      
          </android.support.v4.widget.NestedScrollView>
      
      
          <RelativeLayout
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:padding="20dp">
              <ImageView
                  android:id="@+id/imgSearch"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  android:src="@drawable/ic_search_white"
                  android:contentDescription="@string/search"/>
      
              <ImageView
                  android:id="@+id/imgSettings"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  android:layout_alignParentEnd="true"
                  android:layout_alignParentRight="true"
                  android:src="@drawable/ic_settings"
                  android:contentDescription="@string/settings" />
          </RelativeLayout>
      
      
      </android.support.design.widget.CoordinatorLayout>
      

0 个答案:

没有答案