最简单靠谱的底部导航栏实现!!!
前言
Android实现底部导航栏的方式很多,有5种实现方式。
作者使用过两种:RadioGroup+Fragment;FragmentTabHost;其中第一种更容易上手。
实现效果
目录
- 创建RadioGroup
- 监听,切换 Fragment
创建RadioGroup
<RadioGroupandroid:id="@+id/radiogroup"android:layout_width="match_parent"android:layout_height="56dp"android:orientation="horizontal"><RadioButtonandroid:id="@+id/rb_chat"style="@style/BottomNavigationStyle"android:drawableTop="@drawable/main_bottom_chat_selector"android:text="@string/navigation_chat" /><RadioButtonandroid:id="@+id/rb_friend"style="@style/BottomNavigationStyle"android:drawableTop="@drawable/main_bottom_friend_selector"android:text="@string/navigation_friend" /><RadioButtonandroid:id="@+id/rb_setting"style="@style/BottomNavigationStyle"android:drawableTop="@drawable/main_bottom_setting_selector"android:text="@string/navigation_setting" /></RadioGroup>
设置style
<style name="BottomNavigationStyle"><item name="android:layout_width">0dp</item><item name="android:layout_weight">1</item><item name="android:button">@null</item><item name="android:textSize">10sp</item><item name="android:gravity">center</item><item name="android:layout_height">match_parent</item></style>
监听,切换 Fragment
//监听RadioGroup的变化private void listenRgChange() {//RadioGroup 绑定监听器radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {Fragment fragment = null;@Overridepublic void onCheckedChanged(RadioGroup group, int checkedId) {// 检查被点击的IDswitch (checkedId) {case R.id.rb_chat:fragment = chatFragment;break;case R.id.rb_friend:fragment = friendFragmengt;break;case R.id.rb_setting:fragment = settingFragment;break;}//切换到对应的FragementswitchFragment(fragment);}});//设置默认页面为会话页面radioGroup.check(R.id.rb_chat);}//实现“切换到对应的Fragement”private void switchFragment(Fragment fragment) {FragmentManager supportFragmentManager = getSupportFragmentManager();supportFragmentManager.beginTransaction().replace(R.id.framelayout, fragment).commit();}
最简单靠谱的底部导航栏实现!!!相关推荐
- React Native(四)——顶部以及底部导航栏实现方式
效果图: 一步一步慢慢来: 其实刚入手做app的时候,就应该做出简单的顶部以及底部导航栏.无奈又在忙其他事情,导致这些现在才整理出来. 1.顶部导航栏:react-native-scrollable- ...
- android仿微信的activity平滑水平切换动画,Android实现简单底部导航栏 Android仿微信滑动切换效果...
Android实现简单底部导航栏 Android仿微信滑动切换效果 发布时间:2020-10-09 19:48:00 来源:脚本之家 阅读:96 作者:丶白泽 Android仿微信滑动切换最终实现效果 ...
- Android 底部导航栏-极致简单版
底部导航栏是常用的一个工具,大多数的APP都带有底部导航栏,底部导航栏可以方便用户一只手操作,切占用内存比常规的Activity少,底部导航栏使用Fragment+RadioGroup方法来实现,示意 ...
- php仿微信底部菜单,Android实现简单底部导航栏 Android仿微信滑动切换效果
Android仿微信滑动切换最终实现效果: 大体思路: 1. 主要使用两个自定义View配合实现; 底部图标加文字为一个自定义view,底部导航栏为一个载体,根据需要来添加底部图标; 2. 底部导航栏 ...
- android滑动菜单图标,Android实现简单底部导航栏 Android仿微信滑动切换效果
Android仿微信滑动切换最终实现效果: 大体思路: 1. 主要使用两个自定义View配合实现; 底部图标加文字为一个自定义view,底部导航栏为一个载体,根据需要来添加底部图标; 2. 底部导航栏 ...
- android 底部滑动效果怎么做,Android实现简单底部导航栏 Android仿微信滑动切换效果...
android仿微信滑动切换最终实现效果: 大体思路: 1. 主要使用两个自定义view配合实现; 底部图标加文字为一个自定义view,底部导航栏为一个载体,根据需要来添加底部图标; 2. 底部导航栏 ...
- 开发vue底部导航栏组件
这个想法源于最近自己在开发一个移动端博客的一个底部导航栏,原型设计如下: 我们来分析一下这个导航栏,其实很简单啦,就是自适应固定在底部 我们可以使用CSS3属性display:flex设置父级盒子为伸 ...
- 底部导航栏Bottom navigation规范指南
原文链接:https://github.com/LittleFriendsGroup/BottomNavigation 底部导航栏(Bottom navigation)规范指南 前言: 最近 Goog ...
- 底部导航栏的几种实现方式
概述 Android底部导航栏实现方式真的是太多了~在这里仅介绍几种实现方式~建议使用TabLayout +ViewPager ,TabLayout是Android Material Design中的 ...
最新文章
- 一分钟了解阿里云产品:先知计划
- EditText的另类用法
- GDOP定位算法的MATLAB仿真
- 各个大厂的机器学习平台概述
- 动环监控系统的组成都有什么呢?
- centos7 elk7.1.1安装
- Dx11DemoBase 基类(二) 初始化 DirectX11 的 4个基本步骤
- 剑指offer 矩形覆盖
- HDU 1024Max Sum Plus Plus(最大m字段和)
- System Center Technical Preview DPM(2016)对Exchange2016的灾难恢复
- Qt工作笔记-Qt5 利用QJson从文件读取Json并解析
- 在 Linux 下使用 RAID(九):如何使用 ‘Mdadm’ 工具管理软件 RAID
- LeetCode(1029)——两地调度(JavaScript)
- 高级计算机网络 ppt模板,高级计算机网络幻灯片课件.ppt
- IC卡读写器c#源代码
- 7. 稀疏表示之OMP,SOMP算法及openCV实现
- Android编码规范
- 夜深人静写算法(一)- 搜索入门
- excel同一行中如何添加换行
- Mahalanobis距离(马氏距离)的“哲学”解释
热门文章
- linux 线程的调度策略
- 八、自动曝光 (转自 色影无忌)
- php for循环九九乘法表,for循环连续求和、九九乘法表代码
- 开发新浪微博android客户端
- CAUSE: 加载证书时出错PKCS12 key store mac invalid - wrong password
- 【编译原理】【C语言】实验一:手动构造词法分析器
- 定时任务Cron表达式学习
- 派盘——安全、高效、便捷的本地云存储
- 将轮廓仪采集的.csv格式的数据转换成.asc
- 如何使用usb_cam和image_transport_plugins插件进行usb摄像头的视频获取和实时图像传输