首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【Flutter 专题】11 底部状态栏了解下?

和尚今天来整理一下在学习测试 Flutter 时需用到的底部导航栏 BottomNavigationBar,使用方式很简单,和尚感觉效果比原生的 Android 要好一些。...BottomNavigationBar 为底部导航栏控件,可以包含文字标签和图标等基本信息,通常在三到五个之间;据了解,iOS 的规范底部导航栏最多可设置五个,所以大部分应用均在五个以内;现在很多应用都是以底部导航栏...与 body 同级的位置添加 BottomNavigationBar,BottomNavigationBarItem 中可以添加文字标签或图标 (Icons/Image) 等,若图片不存在时会显示空白;...PageView 会切换内容,但是底部状态栏并没有改变样式,因为目前用的时固定的图标和文字,此时需要处理图标和文字切换时的样式,如下: var _bottomText = ['签到', '我']; var...然而和尚添加了更改状态时的样式,点击底部状态栏时依旧不会变色;和尚查了很久突然发现,和尚的 HomePage() 继承的是 StatelessWidget 无状态样式,此时更换为 StatefulWidget

1.9K41

Flutter Widgets 之 BottomNavigationBar

点击其他2个item时没有反应,添加切换效果: int _currentIndex = 0; BottomNavigationBar( onTap: (int index) {...currentIndex代表当前显示导航的索引,当前切换时调用onTap,在onTap回调中调用setState方法改变_currentIndex的值达到切换的效果。 效果如下: ?...我们还可以设置其背景颜色(backgroundColor)、图标大小(iconSize)、选中和未选中图标、字体的颜色,大小等。...如果导航的图标是自己设计的图标,这时仅仅通过BottomNavigationBar是无法实现我们想要的效果的,比如微信的导航的效果,虽然选中和未选中也是颜色的区别,但图标不是Icons自带的图标,想要实现切换...推荐几款Github上带动画效果的底部导航 Fluid Button Bar https://github.com/gskinnerTeam/flutter_vignettes/tree/master

79830
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Flutte部件目录-Material Components 顶

    导航栏的背景色是默认的材质背景色ThemeData.canvasColor(实质上是不透明的白色)。 BottomNavigationBarType.shifting,有四个或更多项目时的默认值。...TabBarView 显示与当前选定选项卡相对应的部件的页面视图。 通常与TabBar结合使用。 ?...一个凸起的按钮由一个矩形的材料悬停在界面上。 ? ? FloatingActionButton 浮动操作按钮是一个圆形图标按钮,它悬停在内容上以提升应用程序中的主要操作。...FlatButton 平面按钮是在材料组件部件上打印的部分,通过填充颜色对触摸作出反应。 ? IconButton 图标按钮是一个打印在材质小部件上的图片,通过填充颜色(墨水)对触摸作出反应。 ?...将按钮封装在工具提示窗口小部件中,以便在按下窗口小部件时(或者当用户采取其他适当的操作时)显示标签。 ? DataTable 数据表显示一组原始数据。 它们通常出现在桌面企业产品中。

    9.5K40

    【Flutter】StatefulWidget 组件 ( 底部导航栏组件 | BottomNavigationBar 组件 | BottomNavigationBarItem 组件 | 选项卡切换 )

    可以改变页面状态 ; 设置一个成员变量 , 标识当前选中的索引值 ; /// 当前被选中的底部导航栏索引 int _currentSelectedIndex = 0; 将 BottomNavigationBar...setState(() { // 改变 int _currentSelectedIndex 变量的状态 _currentSelectedIndex...// 改变 int _currentSelectedIndex 变量的状态 _currentSelectedIndex = index; });...对应组件 , 如果选项卡索引为 0 , 显示组件 0 , 如果选项卡索引为 1 , 那么显示组件 1 ; 设置 body 字段值时 , 根据当前的被中选的选项卡索引值 , 判断应该显示哪个组件 ; body...// 改变 int _currentSelectedIndex 变量的状态 _currentSelectedIndex = index; });

    2.4K00

    【Flutter】底部导航栏实现 ( BottomNavigationBar 底部导航栏 | BottomNavigationBarItem 导航栏条目 | PageView )

    , // 右下角的悬浮按钮 ( 可改变位置 ) this.floatingActionButtonLocation, this.floatingActionButtonAnimator..., 同一时间只显示一个 ; 三、BottomNavigationBar 底部导航栏 ---- 通过 Scaffold 组件的 bottomNavigationBar 字段 , 可以设置底部导航栏菜单..., /// 都会根据当前点击的选项而改变 , /// 改变的时候有切换动画 /// 选中的状态下显示底部图标的文本 /// 不选中的状态下隐藏底部的文本内容 shifting...onTap 字段设置点击事件 , 传入的参数是点击的底部导航栏索引值 ; BottomNavigationBar 构造函数 : BottomNavigationBar({ Key?..., http://flutter.axuer.com/docs/ Flutter 相关问题 : https://flutterchina.club/faq/ ( 入门阶段推荐看一遍 ) GitHub 上的

    6.2K50

    在 Flutter 中创建漂亮的底部导航栏

    ConvexBottomBar是一个底部导航栏组件,用于展现凸起的TAB效果,支持多种内置样式与动画交互。你可以在https://appbar.codemagic.app上找到在线样例。...如何使用: 通常, 「ConvexAppBar」 可以通过设置它的 bottomNavigationBar 来与脚手架一起工作。...提供Builder API以自定义新样式 在AppBar上添加徽章 支持优雅的过渡动画 提供Hook API来重载一些内部样式 RTL布局支持 属性: 下面是 「*Convex_Bottom_Bar*...」 的一些属性: 「fixed」 (副标题图标停留在中心) 「fixedCircle」 (相同,但在固定图标的所有边上都有一个白色的圆圈) 「react」 (上标图标取代点击另一个图标) 「reactCircle...」 (与上标图标中的白色圆圈相同) 「textIn」 (选定的离子出现相应的标题) 「titled」 (未选择的图标是显示其标题的单个图标) 「flip」 (点击图标显示一个 flip 动画) 「custom

    8.1K10

    【Flutter】底部导航栏页面框架 ( BottomNavigationBar 底部导航栏 | PageView 滑动页面 | 底部导航与滑动页面关联操作 )

    ; 设置当前索引 : BottomNavigationBar的 currentIndex 属性设置当前底部导航栏的选中索引 , 为其设置一个变量 , 改变该变量值后 , 通过 setState 方法更新..., color: Colors.grey, ), /// 选中状态下的图标, 红色 activeIcon...与 PageView 关联 ---- BottomNavigationBar 被动设备选中状态 : BottomNavigationBar 的索引通过一个在组件内部定义的私有变量 _currentIndex...私有变量 , 即可控制 BottomNavigationBar 的选中状态 ; BottomNavigationBar 主动设置选中状态 : 在 BottomNavigationBar 的 onTap..., http://flutter.axuer.com/docs/ Flutter 相关问题 : https://flutterchina.club/faq/ ( 入门阶段推荐看一遍 ) GitHub 上的

    4.5K20

    掌握Flutter底部导航栏:畅游导航之旅

    4.1 更改选中项颜色和图标 通过设置BottomNavigationBar的selectedItemColor属性,可以更改选中项的颜色。...要调整底部导航栏的高度,可以使用BottomNavigationBar的fixedHeight属性来指定固定高度,也可以使用BottomNavigationBar的selectedIconTheme属性来调整图标的大小...通过设置Container的背景颜色、圆角和文本内容,我们可以实现不同样式的徽章,并通过动态改变文本内容来实现不同数量的提示。...7.3 实现底部导航栏的动画效果 为了提升用户体验,有时候我们还可以为底部导航栏添加一些动画效果,例如切换导航项时的渐变动画、滑动导航栏时的缩放动画等。...,通过在build方法中根据当前选中的导航项来动态改变容器的颜色,从而实现了底部导航栏的渐变动画效果。

    47810

    谷歌官方导航控件BottomNavigationBar的日常使用

    BottomNavigationBar和其他控件的配合是完全解耦的,日常使用分为BottomNavigationBar+ViewPager 、BottomNavigationBar+FrameLayput...;默认颜色为Theme’s Primary Color active color : 在BACKGROUND_STYLE_STATIC下,为图标和文本激活或选中的颜色;在BACKGROUND_STYLE_RIPPLE...下为图标和文本被激活或选中的颜色;默认颜色为Color.WHITE 4.自定义Item颜色Individual BottomNavigationItem Colors 如果Item的选中/未选中颜色需要特殊处理...0dp,默认为8dp 6.自定义选项图标BottomNavigationItem Icon Customisations 可以设置选项,选中和未选中使用不同的图标 //setInactiveIcon...();//隐藏 bottomNavigationBar.show();//显示 展示和隐藏时动画模式 默认都是动画模式,参数传false可以关闭动画 bottomNavigationBar.hide

    34130

    谷歌官方导航控件BottomNavigationBar的日常使用

    BottomNavigationBar和其他控件的配合是完全解耦的,日常使用分为BottomNavigationBar+ViewPager 、BottomNavigationBar+FrameLayput...;默认颜色为Theme’s Primary Color   active color : 在BACKGROUND_STYLE_STATIC下,为图标和文本激活或选中的颜色;在BACKGROUND_STYLE_RIPPLE...下为图标和文本被激活或选中的颜色;默认颜色为Color.WHITE   4.自定义Item颜色Individual BottomNavigationItem Colors   如果Item的选中/未选中颜色需要特殊处理...0dp,默认为8dp   6.自定义选项图标BottomNavigationItem Icon Customisations   可以设置选项,选中和未选中使用不同的图标   //setInactiveIcon...();//隐藏 bottomNavigationBar.show();//显示   展示和隐藏时动画模式   默认都是动画模式,参数传false可以关闭动画   bottomNavigationBar.hide

    2K50

    Flutter 入门指北之快速搭建界面(含Flutter知识体系)

    上一篇讲完 Flutter 中的一些基本部件,这篇就先填完上篇留下的没写的 AppBar 的坑,以及 Scaffold 其他参数的使用,在开始前,先补一张缩略版的脑图 ?...(8.0), this.child, // 用于自定义按钮的内容 this.icon, // 按钮的图标 this.offset = Offset.zero, // 展示时候的便宜...,这边切换 PageView 的页面后,TabBar 也需要随之改变 // 通过 tabController 来改变 TabBar 的显示位置 _tabController.index...能够使我们快速去搭建一个界面,但是,并不是所有的界面都需要 AppBar 这个标题,那么我们就不会传入 appBar 的属性,我们注释 _HomePageState 中 Scaffold 的 appBar...,当手势从左侧滑出或者点击 leading 图标,抽屉就出来了 AppBar - bottomNavigationBar bottomNavigarionBar 可以传入一个 BottomNavigationBar

    1.7K20

    Flutter 组件集录 | 桌面导航 NavigationRail

    图片 ---- 但是在桌面端,由于一般是宽大于高,所以 BottomNavigationBar 并不适用。而是侧边的导航栏较为常见,比如下面飞书的客户端界面布局。...enum NavigationRailLabelType { none, selected, all, } 设置为 all 时,效果如下:导航菜单会同时显示 图标 和 文字标签。...---- 设置为 selected 时,效果如下:只有激活的导航菜单会同时显示 图标 和 文字标签 。...---- 6.剖析 NavigationRail 组件,借鉴思路 就像世界上并没有什么包治百病的 药 ,我们也并不能苛求一个组件能满足所有的布局需求。...所以说源码是最好的老师,通过分析源码的实现去思考和学习,是成长的一条很好的途径。而不是什么东西都靠别人给你灌输,遇到不会的或犹豫不决时就到处问。

    3.3K20
    领券