接下来我想写一下我自己通过这两天的接触对于Flutter的核心内容也就是上面好处的第二点的理解。

一切都是控件(Widget)

在Flutter中,每个应用程序都是Widget,这点和其他的应用框架不一样,Flutter的对象模型是统一的,也就是控件。

一个控件可以定义:

  • 结构元素(比如按钮或者菜单)

  • 风格元素(比如字体或者颜色方案)

  • 布局

  • 一些业务逻辑

控件是基于构图形成层次结构,每个控件嵌套在其中,并从其父代继承属性,没有单独的“应用程序”对象,只有根控件。

您可以通过告知框架用另一个控件替换层次结构中的控件来响应事件,比如用户交互,然后框架会对比新的控件和旧的控件,并有效的更新用户界面,即更新有变化的控件。

也就是说,在Flutter中,一个应用就是有许许多多的Widget组合而成的。

实践

做了一个豆瓣电影列表的功能

你将会学到

  • 怎么样使用列表控件,Row控件,Column控件

  • 怎么使用网络加载,异步操作怎么处理

  • 实现加载更多

  • 如何使用flutter布局,个人感觉相当好理解,Row控件,Column控件,ListView控件就能做出这个效果,我这是一个卡片

  • 使用buildDefaultTabController容易的实现viewpager类似的东东

  • 实现自定义控件 Ratingbar

  • tab

  • bottomNavigationBar

  • 页面间的跳转。

  • json2model代码自动生成

我这里遇到了一些坑

  • 在ListView的item中使用横向ListView,导致运行不出来,因此那个换成了Row。

  • 在使用column和row控件的时候,界面刷步出来,定位原因是因为里面存在不确定的rect的子控件导致, 因此解决的办法就是使用expande,或者flexable包裹,或者其他的方式能够明确子控件怎么占位,占多少位置。

  • 切换代缓存的图片控件cacheImage出现问题,刷步出图片,解决办法,卸载安装包,重装,原因没有定位出

下面是效果图:

在这里插入图片描述

增加了段子页面

你可以学会, 弹框bottomModalDialog

在这里插入图片描述

安装包大小

安装包有8M。因为用原生的写会不至于有这么大,所以要看看究竟,其实很容易发现,flutter库占了很大部分,实际dex文件较小。

在这里插入图片描述

最后

**一个零基础的新人,我认为坚持是最最重要的。**我的很多朋友都找我来学习过,我也很用心的教他们,可是不到一个月就坚持不下来了。我认为他们坚持不下来有两点主要原因:

他们打算入行不是因为兴趣,而是因为所谓的IT行业工资高,或者说完全对未来没有任何规划。

刚开始学的时候确实很枯燥,这确实对你是个考验,所以说坚持下来也很不容易,但是如果你有兴趣就不会认为这是累,不会认为这很枯燥,总之还是贵在坚持。

技术提升遇到瓶颈了?缺高级Android进阶视频学习提升自己吗?还有大量大厂面试题为你面试做准备!

提升自己去挑战一下BAT面试难关吧

对于很多Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。整理的这些知识图谱希望对Android开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。

不论遇到什么困难,都不应该成为我们放弃的理由!

如果有什么疑问的可以直接私我,我尽自己最大力量帮助你!

最后祝各位新人都能坚持下来,学有所成。
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

最后祝各位新人都能坚持下来,学有所成。
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐