我有一个填充我的屏幕的视图,我设置了Y的动画,因此隐藏了它的顶部,但是我需要它的按钮保持它的状态\ n' s位置。
动画代码:
mainLayout.animate().translationY(-toolbar.getBottom()).setInterpolator(new AccelerateInterpolator()).start();
滚动前:
滚动后:
注意:
1)我这样做是因为我需要在滚动时隐藏工具栏。
2)我尝试了其他隐藏工具栏的方法,包括动画工具栏的高度,边距,填充,但是他们是迟钝的。
3)我试图翻译工具栏,但它在布局下方保持其位置并且不会向上移动。
更新1:
<android.support.v4.widget.DrawerLayout
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/home_drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
tools:context=".HomeActivity"
android:cacheColorHint="@android:color/transparent"
android:clipToPadding="false"
>
<!-- main view -->
<RelativeLayout
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/tansparent"
android:id="@+id/home_main_layout"
tools:context=".HomeActivity">
<android.support.v7.widget.Toolbar xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/home_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/category_activity_topbar_background"
app:theme="@style/Theme.AppCompat"
android:layout_alignParentTop="true"/>
<com.viewpagerindicator.TabPageIndicator
android:id="@+id/tab_indicator"
android:layout_height="@dimen/tab_height"
android:layout_width="match_parent"
android:layout_below="@+id/home_toolbar"/>
<android.support.v4.view.ViewPager
android:id="@+id/home_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/tab_indicator"/>
<ImageButton
android:id="@+id/addBookButton"
android:layout_width="@dimen/add_button_width_height"
android:layout_height="@dimen/add_button_width_height"
android:scaleType="centerInside"
android:src="@drawable/add_button"
android:background="@drawable/circles_background"
android:adjustViewBounds="true"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginBottom="@dimen/add_button_margin_bottom"
android:layout_marginRight="@dimen/add_button_margin_right"
android:onClick="importNewBooksButtonMethod"/>
</RelativeLayout>
<!-- drawer -->
<LinearLayout
android:id="@+id/settingDrawer"
android:layout_width="@dimen/setting_drawer_width"
android:layout_height="match_parent"
android:layout_gravity="start"
android:orientation="vertical"
android:background="@color/white"
android:clickable="true">
</LinearLayout>
</android.support.v4.widget.DrawerLayout>
答案 0 :(得分:1)
homeMainLayout.animate().translationY(-toolbar.getBottom()).setInterpolator(new AccelerateInterpolator()).withEndAction(new Runnable()
{
@Override
public void run()
{
DrawerLayout.LayoutParams params = (DrawerLayout.LayoutParams) homeMainLayout.getLayoutParams();
params.bottomMargin = -toolbarHeight;
homeMainLayout.setLayoutParams(params);
}
}).start();