当前位置: 首页 > news >正文

Android中使用bottomnavigation实现底部导航栏

1.Activity页面

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"android:background="#EFEDED"android:fitsSystemWindows="false"><FrameLayoutandroid:id="@+id/frame"android:layout_width="match_parent"android:layout_height="match_parent"android:layout_above="@id/bottom_navigation_1" /><com.google.android.material.bottomnavigation.BottomNavigationViewandroid:id="@+id/bottom_navigation_1"android:layout_width="match_parent"android:layout_height="wrap_content"app:itemBackground="@color/white"            导航栏背景颜色app:itemIconTint="@color/selector_color"     icon图片选中和未选中颜色app:itemTextColor="@color/selector_color"    文字选中和未选中颜色app:menu="@menu/bottom_navigation_menu"    app:labelVisibilityMode="labeled"android:layout_alignParentBottom="true"/></RelativeLayout>

2.创建menu页面 (将需要的图片放入mipmap中或drawable中)

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"><itemandroid:id="@+id/navigation_home"android:icon="@drawable/home"android:title="首页"android:checked="true"/><itemandroid:id="@+id/navigation_quanzi"android:icon="@drawable/jiedan_icon"android:title="接单" /><itemandroid:id="@+id/navigation_dingdan"android:icon="@drawable/dingdan"android:title="订单" /><itemandroid:id="@+id/navigation_mine"android:icon="@drawable/mine"android:title="我的" /></menu>

3.在Activity的java文件中填写 点击事件(切换fragment页面)

  private BottomNavigationView bottomNavigationView;   bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {@Overridepublic boolean onNavigationItemSelected(@NonNull MenuItem item) {switch (item.getItemId()) {case R.id.navigation_home:ReplaceFragment(new HomeFragment());return true;case R.id.navigation_quanzi:ReplaceFragment(new QuanZiFragment());return true;case R.id.navigation_dingdan:ReplaceFragment(new DingDanFragment());return true;case R.id.navigation_mine:ReplaceFragment(new MineFragment());return true;}return false;}});

创建调用切换页面的方法

  private void ReplaceFragment(Fragment fragment){FragmentManager fragmentManager=getSupportFragmentManager();FragmentTransaction transaction= fragmentManager.beginTransaction();transaction.replace(R.id.frame,fragment);transaction.commit();}


http://www.mrgr.cn/news/55234.html

相关文章:

  • 【Eclipse系列】The word is not correctly spelled问题解决
  • 探究互联网数字化商品管理变革:从数据化到精准运营的路径转型
  • 基于MEDLL的Loran-C天地波周期联合识别及信号跟踪方法及MATLAB仿真代码和实测信号处理
  • RestTemplate 学习笔记
  • Parade Series - Win11 YOLO v5
  • js.矩阵置零
  • CST软件如何验证“平面波+探针”的频域结果
  • 怎么用六西格玛增强解决问题的逻辑性?
  • ATTCK 框架讲解
  • 建议使用requestAnimationFrame替代定时器setInterval、setTimeout完成页面动画
  • SAP MDG —— MDG on S/4HANA 2023 FPS02 创新汇总 AI功能首次发布!
  • 七天入门LLM大模型 |提示词工程-Prompt Engineering
  • Django
  • sentinel原理源码分析系列(八)-熔断
  • JVS逻辑引擎,API接入数据加解密操作详解
  • Java EE规范
  • 供电电压和逻辑电压
  • Visual Studio快捷添加代码片段的方法
  • 时装购物|基于springBoot的时装购物系统设计与实现(附项目源码+论文+数据库)
  • 通过多方面去评估EDM电子邮件群发营销的效果
  • 基于Java+SpringBoot+Vue的师生健康信息管理系统
  • 浏览器播放rtsp视频流解决方案
  • Web3的核心概念:去中心化如何改变互联网
  • 优化分页查询
  • Semiconductor Material Model Properties
  • 开源进销存软件如何助力中小企业数字化转型?