import 'package:flutter/material.dart'; import 'package:flutter_app/bottom_navigation_widget.dart'; void main() => runApp(MyApp()); class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'Flutt…
如果你用过BottomNavigationBar.TabBar.还有Drawer,你就会发现,在切换页面之后,原来的页面状态就会丢失. 要是上一页有一个数据列表,很多数据,你滚动到了下头,切换页面后,想再看一下下头的数据,但是Flutter给你重回页面了... 这谁能顶得住啊. 看了一下解释,原来Flutter中为了节约内存不会保存widget的状态,widget都是临时变量. 不过还是有很多办法解决的,网上传言用 AutomaticKeepAliveClientMixin 配合 @overri…
之前写过的一篇文章介绍了 Flutter - 创建横跨所有页面的侧滑菜单, 这次就一起来学习一下底部导航栏. 底部导航栏在ios平台上非常常见,app store就是这样的风格.还有就是大家最常用的微信,也是底部导航的. 既然这么常见的功能,在Flutter上面也是必不可少的啦.谷歌已经做好了Widget,下面我们就来看一下如何创建一个底部导航栏. 1. 准备工作 首先创建一个空的Flutter 项目,并且按照图示结构.创建一个pages文件夹,并新建四个page文件. 这四个pages是用到导…
03.底部导航栏制作 material是谷歌退出的 还有另外的一种:cupertino是IOS的风格 我们底部的导航栏,静态的widget是不合适的,这垃圾我们用到动态的widget 这重新改成动态的组件 依然叫做IndexPage 声明一个List来放我们底栏的图标啊 文件啊,List我们希望是不变的,是个常量 所以我们用Final来定义 我们再复制三个BottomNavigationBarItem元素 最终代码: import 'package:flutter/material.dart';…
BottomNavigationBar常用的属性: 属性名 说明 items List<BottomNavigationBarItem> 底部导航条按钮集合 iconSize icon currentIndex 默认选中第几个 onTap 选中变化回调函数 fixedColor 选中的颜色 type BottomNavigationBarType.fixed BottomNavigationBarType.shifting import 'package:flutter/material.da…
实现一个底部导航栏,包含3到4个功能标签,点击对应的导航标签可以切换到对应的页面内容,并且页面抬头显示的内容也会跟着改变. 实际上由于手机屏幕大小的限制,底部导航栏的功能标签一般在3到5个左右,如果太多,会比较拥挤,影响用户体验,实际上目前市面上大多数APP的底部导航标签都控制在4到5个左右.既美观.又不会让用户觉得功能繁杂.这个功能的实现需要用到flutter里的BottonNavigationBar这个控件. 属性名 类型 说明 currentIndex int 当前索引,用来切换按钮控制…
关于界面切换以及底栏的实现可参考之前写的一篇文章:Flutter实 ViewPager.bottomNavigationBar界面切换 1.新建4个基本dart文件 在pages目录下,我们新建下面四个dart文件. home_page.dart :商城首页UI页面,首页相关的UI我们都会放到这个文件里. category_page.dart: 商城分类UI页面,这个页面会有复杂的动态组件切换. cart_page.dart:商城购物车UI页面,这个页面会包括购物车的全套功能. member_p…
1.cupertino_IOS风格介绍 在Flutter里是有两种内置风格的: material风格: Material Design 是由 Google 推出的全新设计语言,这种设计语言是为手机.平板电脑.台式机和其他平台提供一致,更广泛的外观和感觉.我喜欢称它为纸墨设计.Material Design 风格是一种非常有质感的设计风格,并会提供一些默认的交互动画. cupertino风格:即 IOS 风格组件,它重现了很多经典的有 IOS 特性的交互和界面风格,让适用于 IOS 的人感觉亲切和…
一,概述 BottomNavigationBar即是底部导航栏控件,显示在页面底部的设计控件,用于在试图切换,底部导航栏包含多个标签.图标或者两者搭配的形式,简而言之提供了顶级视图之间的快速导航. 二,Bar关键元素 BottomNavigationBar BottomNavigationBar 是属于 Scaffold 中的一个位于底部的控件.通常和 BottomNavigationBarItem 配合使用. BottomNavigationBar构造方法 BottomNavigationBa…
04.底部导航栏切换效果 博客地址: https://jspang.com/post/FlutterShop.html#toc-291 我们要做的效果图: 新建四个页面 home_page.dart home_page.dart为了展示切换效果,所以代码比较简单.中间放个Center,center里面再放一个Text文本就可以了. 剩下的企业几个页面都做相应的复制就可以了. 分类页面 购物车页面 会员中心页面 IndexPage页面引入四个子页面 引入四个页面以后,需要定义一个List变量.把四…