安卓期末赶工CV作业的底部导航栏模板
本文最后更新于:2022年11月20日 晚上
想说的话
不适合小白看,小白看可能会产生许多疑问。文章内容可能抽象,毕竟写给自己看的。
正文
底部导航栏!
先来看看界面设计。
首先是实现底部导航栏,非常简单,左上角File -> New -> New Project -> Bottom Navigation Activity
,然后就自动为你创建好了一个现成的底部导航栏,在上面稍微做点改动即可拿来吧你!
效果图:
那具体怎么改动?先看到res
里边的layout
,Fragment
布局文件全部右键Refactor -> Rename
,就是改名,以我的导航栏为例:fragment_home -> fragment_memo
。
然后看到工程文件里边的ui
文件夹,里边分别存了三个界面的Fragment
,只留下三个Fragment
,ViewModel
全删了,然后再把Fragment
里边改成下边这样子。(图方便)
1 |
|
接着去res/navigation/mobile_navigation.xml
里进行改动,还是以下面代码为例。
1 |
|
可以看到上面四项其实就是把全部home
改为了memo
,Home
改为了Memo
。
最后一步,改res/menu/bottom_nav_menu.xml
,看代码。
1 |
|
同样是把全部home
改为了memo
。但是这里的图标文件要怎么获得呢?有两种方式:
- 上网找一个合适的,然后copy进去
res/drawble
即可引用 drawble
文件夹右键,New -> Vector Asset
创建一个
我是用的方法二,挺方便的。可能
MainActivity
要改一下,具体如下:1
2
3AppBarConfiguration appBarConfiguration = new AppBarConfiguration.Builder(
R.id.navigation_memo, R.id.navigation_music, R.id.navigation_setting)
.build();就是里面的资源
R.id.xxx
要改成自己修改过后的而不是一开始它提供的。梅开二度!如果你已经创建好了一个
Fragment
并满怀期待地展示出来,打开应用,切换到对于界面,你可能会发现最底部的内容被导航栏挡住了!
对此,去activity_main
里面找到<fragment>
元素里面的android:layout_height
属性,修改为0dp
即可!即:android:layout_height="0dp"
希望本文章能够帮到您~