gpt4 book ai didi

Android 工具栏显示/隐藏空格

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:44:30 27 4
gpt4 key购买 nike

我试图让我的工具栏在用户滚动列表时隐藏或显示。为此,我使用了翻译,但出现了一个空白区域而不是我的 actionBar。如果我使用 setVisibility(View.GONE),空白将在动画期间出现并在完成后隐藏,这很丑陋..

Here is a short video of my issue

这是我制作动画的方式(来自 Google I/O 应用程序):

public void showToolbar(boolean show){
if (show) {
toolbar.animate()
.translationY(0)
.alpha(1)
.setDuration(HEADER_HIDE_ANIM_DURATION)
.setInterpolator(new DecelerateInterpolator());
} else {
toolbar.animate()
.translationY(-toolbar.getBottom())
.alpha(0)
.setDuration(HEADER_HIDE_ANIM_DURATION)
.setInterpolator(new DecelerateInterpolator());
}
}

这是我的布局:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/mainContent">

<include layout="@layout/toolbar"
android:id="@+id/my_toolbar" />

<fragment
android:name="com.ar.oe.fragments.SectionsFragment"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="?attr/actionBarSize"/>

</RelativeLayout>

还有我的工具栏

<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/my_toolbar"
android:layout_height="?attr/actionBarSize"
android:layout_width="match_parent"
android:minHeight="?attr/actionBarSize"
android:background="?attr/colorPrimary"
/>

最佳答案

您需要为容器而不是工具栏设置动画。

试试这个:

RelativeLayout mainContent = (RelativeLayout) findById(R.id.mainContent);

public void showToolbar(boolean show){
if (show) {
mainContent.animate()
.translationY(0)
.alpha(1)
.setDuration(HEADER_HIDE_ANIM_DURATION)
.setInterpolator(new DecelerateInterpolator());
} else {
mainContent.animate()
.translationY(-toolbar.getBottom())
.alpha(0)
.setDuration(HEADER_HIDE_ANIM_DURATION)
.setInterpolator(new DecelerateInterpolator());
}
}

它对我有用;)

如果你想用你的工具栏移动你的 fragment ,你需要动画你的 fragment 而不仅仅是你的栏。

关于Android 工具栏显示/隐藏空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27458420/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com