Flutter从入门到进阶

Flutter从入门到进阶 《Flutter简介》 Dart入门 《Dart入门—基础类型与正则》 《Dart入门—集合类型》 《Dart入门—函数与运算符》 《Dart入门—库、泛型与异常》 《Dart入门—类与方法》 《Dart入门—控制流程与其他》 Flutter基础 《Flutter基础—你好,Flutter!》 《Flutter基础—开发环境与入门》 《Flutter基础—第一个Flutt...
阅读(117) 评论(0)

Flutter实战一Flutter聊天应用(汇总)

纸聊这个应用程序使用Google的Flutter移动框架开发,是一个实时聊天应用程序,为了能专注于APP设计,应用程序的服务端使用Googler的Firebase平台。程序程序的名称为纸聊,意为像传递小纸条一样的简约聊天,登录后所有好友都在,消息无缝同步,还能发送图片。支持Android、iOS等多个平台,多端消息漫游同步。(由于使用了谷歌的后端服务,该应用程序必须在科学上网时才能正常使用。)应用截...
阅读(200) 评论(0)

Flutter实战一Flutter聊天应用(二十一)

在这一系列的前二十篇文章里,我们已经完成了最主要的添加、删除好友,并与好友聊天,还可以发送图片的功能。这一篇文章会完成个人资料与设置相关的功能,并将应用发布上线。之前设置了个人资料的入口按钮,现在我们就来完成个人资料屏幕,个人资料屏幕的UI如下图所示。在该屏幕点击右上方的按钮会变换浏览、编辑两种状态,而控制状态变换的关键在于设置一个全局变量。当用户进入个人资料屏幕时,编辑状态设置为false,因此显...
阅读(182) 评论(0)

Flutter简介

Flutter makes it easy and fast to build beautiful mobile apps. 这是Flutter项目主页上对Flutter的定义,它可以轻松、快速地构建漂亮的移动应用。Flutter是Google使用Dart语言开发的移动应用开发框架,使用一套Dart代码就能构建高性能、高保真的iOS和Android应用程序,并且在排版、图标、滚动、点击等方面实现零差...
阅读(332) 评论(0)

Flutter实战一Flutter聊天应用(二十)

在上一篇文章《Flutter实战一Flutter聊天应用(十九)》中,我们完成了删除用户的逻辑,就是将会话的有效性设置为false就可以了。那么当会话的有效性为false时,用户再次添加该会话,我们应该怎么处理呢?打开add_session.dart文件,将_AddSessionState的_addSession方法中将新会话写入数据库的代码提取出来。同时,在_AddSessionState中新增一...
阅读(139) 评论(3)

Flutter实战一Flutter聊天应用(十九)

在上一篇文章中,我们完成了聊天列表的用户界面与功能代码。在用户添加完会话后,聊天列表会增加对应的会话项,通过点击会话项,可以进入聊天屏幕。在这一篇文章中,我们主要是修改lib/chat_screen.dart的代码,也就是最早的聊天屏幕。首先打开lib/chat_screen.dart,在ChatScreen中添加五个参数,messages是会话对应的消息列表,myName和sheName是会话双方...
阅读(524) 评论(0)

Flutter实战一Flutter聊天应用(十八)

在上一篇文章中,我们完成了基本的添加聊天功能,但是还没有在聊天列表显示添加的新聊天,在这篇文章中我们将实现这个功能——在聊天列表中展示所有的聊天。首先,我们在/lib目录下新建一个group_chat_list_body.dart文件。在group_chat_list_body.dart中编写一个有状态控件GroupChatListBody,传递两个参数,phone(手机号码)和myName(姓名)...
阅读(478) 评论(0)

Flutter实战一Flutter聊天应用(十七)

在正文开始之前,我们先组织一下数据,所有Firebase实时数据库的数据都被存储为Json对象。我们可以将该数据库视为云托管Json树,该数据库与SQL数据库不同,没有任何表格或记录。当我们将数据添加至Json树时,它变为现有Json结构中的一个节点。虽然Firebase实时数据库允许嵌套数据的深度多达32层,然而,当我们提取数据库中某个位置的数据时,也会检索所有子节点。另外,当我们向某用户授予数据...
阅读(532) 评论(0)

Flutter实战一Flutter聊天应用(十六)

在上一篇文章《Flutter实战一Flutter聊天应用(十五)》中,我们完成了登陆屏幕。在用户登陆成功后,会在本地创建一个LandingInformation文件,以使应用程序在启动时可以判断用户的登陆状态。在main.dart文件中,我们在main方法执行runApp之前使用existsSync方法判断LandingInformation文件是否存在。判断结果会传递给TalkcasuallyAp...
阅读(652) 评论(0)

Flutter进阶—自定义主题风格

质感设计的Theme类将主题应用于后代控件,主题描述了应用程序的颜色和排版选择。后代控件使用Theme.of获取当前主题的ThemeData对象,当控件使用Theme.of时,如果主题稍后更改,则会自动重建,以便可以应用更改。我们可以通过Theme.of查看当前应用程序的配色方案。class _MyHomePageState extends State { Widget...
阅读(599) 评论(0)

Flutter实战一Flutter聊天应用(十五)

在上一篇文章《Flutter实战一Flutter聊天应用(十四)》中,我们完成了注册屏幕。为了保持应用程序入口只有一个,即登陆屏幕,用户注册完成之后会返回手机号码、密码到登陆屏幕,让用户点击登陆按钮就可以直接登陆应用程序了。现在我们就来完善一下登陆屏幕。应用程序的项目已经上传到GitHub上,大家可以直接查看sign_in.dart文件的代码。我们回到sign_in.dart文件,在_SignInS...
阅读(369) 评论(0)

Flutter实战一Flutter聊天应用(十四)

优化输入体验在进行下一步之前,我们先优化一下注册的体验: 正在输入注册信息时,点击屏幕空白部分,清除当前文本输入框的焦点,同时收起键盘。 正在输入注册信息时,直接收起键盘,再点击空白部分,清除当前文本输入框的焦点。 不在用户输入时直接判断并显示错误提示信息,而是在用户输入完成以及点击加入按钮时判断并显示错误提示信息。 在每一个输入框下方都显示帮助信息,提示用户输入什么内容。 首先我们把SignUpS...
阅读(454) 评论(0)

Flutter进阶—Firebase数据库实例

Flutter目前无法使用平台的数据库,因此我们暂时使用Firebase实时数据库。首先我们需要为项目配置Firebase,具体配置方法可以在《Flutter实战一Flutter聊天应用(五)》查看,因为我们只需要使用Firebase数据库,所以pubspec.yaml文件的内容需要修改一下。name: talk_casually description: A new flutter project...
阅读(514) 评论(2)

Flutter实战一Flutter聊天应用(十三)

提交用户的注册信息我们现需要将用户的注册信息保存到Firebase实时数据库,在Firebase控制台中,更改Firebase实时数据库的安全规则,选择“Database > 规则”,规则如下所示:{ "rules": { "users":{ ".read": true, ".write": true }, "messages": {...
阅读(432) 评论(0)

Flutter实战一Flutter聊天应用(十二)

由于当前项目的账号是直接使用Google账户,iOS系统问题不大,但是Android系统如果没有Google框架,则无法使用我们的应用程序。因此,我们需要创建自己的账户数据。在这篇文章中,我们会创建一个登陆屏幕和注册屏幕,两个屏幕的UI如下图所示:关于UI布局的内容不是这篇文章的重点,所以不会具体描述,只会展示代码并陈述布局思路。有关UI布局的内容可以查看《Flutter进阶—构建布局实例》、《Fl...
阅读(527) 评论(0)
115条 共8页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:112366次
    • 积分:2233
    • 等级:
    • 排名:第17539名
    • 原创:113篇
    • 转载:0篇
    • 译文:0篇
    • 评论:23条
    博客专栏
    文章分类
    最新评论