gpt4 book ai didi

android - 以编程方式隐藏/显示 AppBarLayout 内的 android 支持设计 TabLayout

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:37:13 24 4
gpt4 key购买 nike

我想以编程方式在我的 AppBarLayout 中隐藏/显示 TabLayout。简单地将可见性设置为 VISIBLEGONE 是不够的,因为我想为更改设置动画并用我的内容回收空间,同时选项卡撤回并在选项卡后留下空间显示回来。

下面是我的布局 XML 的相关部分 -

    <android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">

<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>

<android.support.design.widget.TabLayout
android:id="@android:id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_scrollFlags="scroll|enterAlways"
app:tabMode="scrollable"
android:layout_marginStart="42dp"
android:layout_marginLeft="42dp"
style="@style/MainTabLayout">

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

最佳答案

作为任何 ViewGroup 子类,AppBarLayout 允许在添加/删除 subview 期间自动动画。您只需在布局文件中添加 android:animateLayoutChanges="true"(默认为 false)。

至于在 View 消失时回收空间内容,您所要做的就是使用 setVisibility(View.GONE) 而不是 setVisibility(View.INVISIBLE) ,因为后者保留了不可见 View 的空间。

关于android - 以编程方式隐藏/显示 AppBarLayout 内的 android 支持设计 TabLayout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32550078/

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