Android UI Material Design交互设计(一)–BottomNavigationView底部菜单
Android UI Material Design交互设计(二)–Toolbar的基本使用与样式修改
Android UI Material Design交互设计(三)–SnackBar 详解
Android UI Material Design交互设计(四)–AppBarLayout 与Toolbar结合
Android UI Material Design交互设计(五)–CollapsingToolbarLayout 折叠布局
Android UI Material Design交互设计(六)–CoordinatorLayout之精髓Behavior 自定义Behavior

这个转GIF工具出了点问题,变成闪屏了
以前我们做这样的底部导航,需要自定义view或者很对view来组成这样的效果,很麻烦。但是Material Design中的BottomNavigationView一个控件完美解决来这个问题

如何使用:

一:添加依赖

    implementation 'com.android.support:design:28.0.0'

二:布局使用
布局文件如下:activity_home.xml

   <?xml version="1.0" encoding="utf-8"?>        

BottomNavigationView的重要属性介绍

  1. 属性一: app:itemBackground 指定的是底部导航栏的背景颜色,默认是主题的颜色;
  2. 属性二: app:itemIconTint 指的是导航栏中图片的颜色 其实也可以不用设置,可以用图片自己的颜色
  3. 属性三: app:iteamTextColor 指的是导航栏文字的颜色
  4. 属性四: app:menu 指的是底部导航栏各个菜单items

@menu/navigation 文件是menu下面的navigation.xml文件 代码如下:

<?xml version="1.0" encoding="utf-8"?>            

三:代码中设置item点击监听事件

public class HomeActivity extends AppCompatActivity implements BottomNavigationView.OnNavigationItemSelectedListener {    TextView message;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_home);        BottomNavigationView bottom = findViewById(R.id.bottom);        message = findViewById(R.id.text);        bottom.setOnNavigationItemSelectedListener(this);    }    @Override    public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {        switch (menuItem.getItemId()){            case R.id.navigation_home:                message.setText("首页");                return true;            case R.id.navigation_dashboard:                message.setText("统计");                return true;            case R.id.navigation_notifications:                message.setText("我的");                return true;        }        return false;    }}

注意:

这里底部导航图片与颜色都是点击会变化的,这里的颜色与图片都是用了selector状态选择器代码如下:
颜色:
@color/navigation_menu_item_color 文件代码

<?xml version="1.0" encoding="utf-8"?>                    

home_selector.xml 代码

<?xml version="1.0" encoding="utf-8"?>            

小结:BottomNavigationView不止可以实现底部菜单,头部菜单,中部菜单都行的

更多相关文章

  1. 【EditText】Android(安卓)中设置 EditText 光标颜色
  2. Android软键盘挡住输入框的问题及解决方法
  3. 自定义ListView中的分割线
  4. EditText常用属性
  5. 关于CoordinatorLayout展开与折叠相关属性
  6. xml-----属性收集
  7. 做 Android(安卓)Layout 达人~
  8. Android(安卓)Layout_weight 属性
  9. Android动画学习笔记-Android(安卓)Animation

随机推荐

  1. Android(安卓)二级动画弹出菜单
  2. android 视频播放器
  3. android file 记录
  4. android关于网络
  5. Android(安卓)Error:Could not open cp_pr
  6. Android(安卓)6.0源码编译环境搭建
  7. 【android】getCacheDir()、getFilesDir(
  8. Android设置或清除默认桌面
  9. 在android中获取系统后台运行的进程
  10. android资源下载