Flutter第六讲,项目框架搭建
Posted 新新猿类
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flutter第六讲,项目框架搭建相关的知识,希望对你有一定的参考价值。
我们上篇把底部的导航栏搭建出来了,今天我们来把每个Item
对应的页面先搭出来,我们首先来新建四个Dart File
,每个页面都是一个Scaffold
里加一个Text
来显示下,我们把四个页面分别命名为,chat_page
, contact_page
, discovery_page
, mine_page
,四个代码都一样我就贴一个出来了
import 'package:flutter/material.dart';
class ChatPage extends StatefulWidget {
@override
_ChatPageState createState() => _ChatPageState();
}
class _ChatPageState extends State<ChatPage> {
@override
Widget build(BuildContext context) {
return Container(
child: Scaffold(
appBar: AppBar(title: Text("微信"),),
body: Center(
child: Text("聊天页面"),
),
),
);
}
}
其他几个文件就把AppBar
的title
和Text
的内容改成对应的页面名称就行,我们这里用StatefulWidget
是为我们后面做准备,每个页面肯定都是会有状态变更的
然后改下我们root_page
里的代码,我们新建一个Lis
t来存放我们刚写好的四个页面,然后把之前的Scaffold
里的body
用我们数组里的一项来填充,具体代码如下:
mport 'package:flutter/material.dart';
import 'package:wechatdemo/chat_page.dart';
import 'package:wechatdemo/contact_page.dart';
import 'package:wechatdemo/discovery_page.dart';
import 'package:wechatdemo/mine_page.dart';
class RootPage extends StatefulWidget {
@override
_RootPageState createState() => _RootPageState();
}
class _RootPageState extends State<RootPage> {
int _currentIndex = 0;
List pages = [ChatPage(), ContactPage(), DiscoveryPage(), MinePage()];
@override
Widget build(BuildContext context) {
return Container(
child: Scaffold(
bottomNavigationBar: BottomNavigationBar(
onTap: (index){
_currentIndex = index;
setState(() {
});
},
items: [
BottomNavigationBarItem(icon: Icon(Icons.chat), title: Text('微信')),
BottomNavigationBarItem(icon: Icon(Icons.bookmark), title: Text('通讯录')),
BottomNavigationBarItem(icon: Icon(Icons.history), title: Text('发现')),
BottomNavigationBarItem(icon: Icon(Icons.person_outline), title: Text('我的')),
],
type: BottomNavigationBarType.fixed,
fixedColor: Colors.green,
currentIndex: _currentIndex,
),
body: pages[_currentIndex],
),
);
}
}
好了,我们保存下看看效果
今天我们就先简单的搭建了下项目的基本框架
,是不是觉得Flutter也很好学很有意思呢,后面我们会先从发现
和我的
这两个模块先做起
One More Thing(福利)
点击查看 2020—课程列表 全网IT各种资源有需求的可以微我,或者你喜欢的课程都可以给我发链接剩下的我来搞定
ios_DevTips
以上是关于Flutter第六讲,项目框架搭建的主要内容,如果未能解决你的问题,请参考以下文章