RN增加底部导航栏图标(新手上路)

刚接触react navigation,想实现一个底部导航栏,发现只有title,没有图标,这哪成呀??

要实现它,首先就要先用那个react-navigation,因为我要实现的是底部导航栏(TabNavigation),所以根据官网要求,先下载一系列的包吧,其中最主要的包是@react-navigation/native , @react-navigation/bottom-tabs(这个包是因为我要用的是底部导航栏,若要用抽屉,或者栈,要安装另外的包),还有一系列的包。
总之,要安装:
npm install react-native-reanimated react-native-gesture-handler react-native-screens react-native-safe-area-context @react-native-community/masked-view @react-navigation/native @react-navigation/bottom-tabs

代码如下:

  1. 创建一个底部导航对象

  2. 创建导航器根组件


4.此时的运行结果:

因为未加底部导航栏图标,所以我增加了一个组件,命名为Logo,暂时先别不管这里面写了什么

增加属性setOptions

在NavigationContainer中的Navigator下增加setOptions(这里可以注意一下,在Navigator下面也有个options,我用它定义了title属性为”食物“,如上代码),
在setOptions里面,有个对象tabBarIcon,给他返回一个组件(可以返回一个size,以控制图标大小,color控制颜色,还有一个focused):
<Logo/>就是我新增的图标组件,其中代码:

这样一增加后,运行效果:

注意:::我在Logo组件里面使用的是Image,意思就是,在用样式的时候注意color属性,不要直接用(可以间接用)

目前为止,基本的已经实现了

优化:
按照官网上说的,可以通过route判断导航页面(通过name属性),目前。我有两个导航页,一个food,一个movie,通过route.name判断导航页,然后判断点击与否(三目运算),点击就将iconname赋值为对应的值,然后将iconname传给<Logo/>,通过logo判断是要返回那张图片,<Logo/>代码如下:

这里通过props结构赋值获取到name属性,通过三目运算判断取哪张图片。
最后的运行结果:


【附上官网】https://reactnavigation.org/

RN新手上路-----底部导航栏图标设置相关推荐

  1. 仿淘宝Android实现底部导航栏图标溢出效果-clipChildren属性

    1.clipChildren和clipPadding说明 clipChildren用来定义他的子控件是否要在他应有的边界内进行绘制. 默认情况下,clipChild被设置为true. 也就是不允许进行 ...

  2. 自定义底部导航栏图标

    底部导航栏我门一般的实现方式就是 RadioGroup 和RadioButton这种组合.但是这样会有很多弊端.比如有个消息提示.比如要随时改变图标 /*** Created by sdx on 20 ...

  3. html5底部导航图标制作,如何做好UI底部导航栏图标设计

    原标题:如何做好UI底部导航栏图标设计 如何做好UI底部导航栏图标设计?图标在产品中的应用非常重要,不同位置的图标有不同的设计思路.本文将从产品和设计两个角度对底部导航栏的图标进行分析.UI设计创新技 ...

  4. html底部导航栏图标切换,【微信小程序】自定义底部导航栏,切换不同页面显示不同tabbar...

    https://blog.csdn.net/small_lack/article/details/80959278 在一个微信小程序中想要用到两种不同的tabbar样式,需要在app.js中自定义,在 ...

  5. android滑动菜单图标,Android实现简单底部导航栏 Android仿微信滑动切换效果

    Android仿微信滑动切换最终实现效果: 大体思路: 1. 主要使用两个自定义View配合实现; 底部图标加文字为一个自定义view,底部导航栏为一个载体,根据需要来添加底部图标; 2. 底部导航栏 ...

  6. UI实用素材模板|app底部导航栏的图标可临摹素材,教你分析!

    图标在产品中的应用非常重要,不同位置的图标有不同的设计思路. 底部导航栏图标重要性 底部导航栏的图标是路牌,承担着指路的作用,给用户指明进入产品后可以分别通往什么页面.早期的底部导航栏是单一的指路功能 ...

  7. 小程序开发|uniapp底部导航栏的如何设置

    1.进行小程序开发之前自行下载 HBuilder X的压缩包,它是不需要进行安装的解压以后,将HBuilder X.exe文件拖到桌面上就可直接使用: 2.点击HBuilder X,新建项目,起一个项 ...

  8. php仿微信底部菜单,Android实现简单底部导航栏 Android仿微信滑动切换效果

    Android仿微信滑动切换最终实现效果: 大体思路: 1. 主要使用两个自定义View配合实现; 底部图标加文字为一个自定义view,底部导航栏为一个载体,根据需要来添加底部图标; 2. 底部导航栏 ...

  9. android仿微信的activity平滑水平切换动画,Android实现简单底部导航栏 Android仿微信滑动切换效果...

    Android实现简单底部导航栏 Android仿微信滑动切换效果 发布时间:2020-10-09 19:48:00 来源:脚本之家 阅读:96 作者:丶白泽 Android仿微信滑动切换最终实现效果 ...

最新文章

  1. chisel快速入门(三)
  2. 【离散数学】欧拉图与汉密尔顿图
  3. Kotlin 1.2 新特性
  4. 记录一次日志实现,基于log4j2
  5. Akka 2 Actor 源码
  6. 【交易技术前沿】低时延基础设施杂谈
  7. 威联通如何备份文件服务器上,威联通NAS提供最佳的备份解决方案
  8. 创新数据基础设施打通“数据”瓶颈,成就智慧院区建设
  9. 如何统计网页的浏览量?Steins
  10. FLASH 闪存的分类与介绍
  11. Win32开发笔记(一):整体流程
  12. 光控可控硅有过零检测和无过零检测区别
  13. JS之如何判断数据类型
  14. 用SQL语句向数据库添加date类型字段
  15. 面试小知识(2)为什么TCP需要三次握手和四次挥手
  16. java 骰子游戏_java 骰子游戏
  17. python3使用myqr生成链接二维码
  18. ThinkCMF知识点汇总
  19. linux下使用如何使用多个CPU核
  20. 基于ssh的高校学生就业系统

热门文章

  1. 2022年安全员-B证考试题及安全员-B证模拟考试题
  2. Mysql知识点一网打尽——学习提纲
  3. AI人脸检测/口罩检测/安全帽检测智能分析网关告警推送功能开发
  4. centos7安装SqlServer2019数据库
  5. 红管家送货单软件永久使用真给力
  6. 2020年408真题_2020年多省书法高考真题
  7. 计算机知识讲座开场,知识讲座主持稿开场白四篇
  8. 老吴网站优化辛酸历程之初涉SEO培训,初识网络营销
  9. 用无人机充当临时基站, 研究背景汇总
  10. 考研必备数学公式大全(数学二)