gpt4 book ai didi

android - 如何将新 Material BottomAppBar 实现为 BottomNavigationView

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:24:20 26 4
gpt4 key购买 nike

我正在尝试实现通常如下所示的新 BottomAppBar: material BottomAppBar作为谷歌家庭应用程序中的 BottomNavigationView,看起来像 this .

我的问题是,因为我只能用菜单资源填充 BottomAppBar,所以我不明白如何对齐我的按钮以使其看起来像 BottomNavigationView(但 Fab 按钮有“剪切”)而不是对齐所有内容到 BottomAppBar 的一侧。

如何在这个新的 Material BottomAppBar 中添加自定义布局?

或者,有没有什么方法可以通过 Fab 按钮的“剪切”来实现 BottomNavigationView(保持很酷的默认动画,如新的 BottomAppBar)?

最佳答案

已解决

基本上,我没有尝试将菜单资源强制到我需要的布局,而是使用了这个解决方案,我只是按照@dglozano 的建议,使用“空”元素在 BottomAppBar 中放置了一个 LinearLayout。

使用 ?attr/selectableItemBackgroundBorderless 我也能够实现与 BottomNavigationView 非常相似的效果。

Screenshot of BottomAppBar

<com.google.android.material.bottomappbar.BottomAppBar
android:id="@+id/bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:gravity="center"
app:layout_anchorGravity="start"
app:hideOnScroll="true"
app:fabAnimationMode="scale"
app:fabAlignmentMode="center"
app:contentInsetEnd="16dp"
app:contentInsetStart="16dp"
app:backgroundTint="@color/colorPrimary">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum="5">
<ImageButton
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
app:srcCompat="@drawable/ic_home_white_24dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:tint="@color/secondary_text"/>
<ImageButton
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
app:srcCompat="@drawable/ic_map_black_24dp"
android:background="?attr/selectableItemBackgroundBorderless"/>
<ImageButton
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@android:color/transparent"/>
<ImageButton
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
app:srcCompat="@drawable/ic_people_white_24dp"
android:background="?attr/selectableItemBackgroundBorderless"/>
<ImageButton
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
app:srcCompat="@drawable/ic_account_circle_24dp"
android:background="?attr/selectableItemBackgroundBorderless"/>
</LinearLayout>
</com.google.android.material.bottomappbar.BottomAppBar>

关于android - 如何将新 Material BottomAppBar 实现为 BottomNavigationView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53682200/

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