框架是什么?
就是你按照约定去写
具体什么时候调用什么,他说了算
你只能按照它的规则去编写你的业务代码,然后就一切正常,你要是不遵循他的方法,就出错
就像你在 viewDidLoad 中直接把资源销毁,然后这个页面中还要用到这个资源,那不就崩了吗?
实际上你的语法没一点问题的,都是可以编译通过的
但是 viewDidLoad 调用的时机不是你决定的,文档中就告诉你 viewDidLoad 是在 view 加载后马上调用
那你就只能在生命周期中的销毁方法中销毁资源
而 Flutter 中的 build 方法就是这个意思,你别管我的 build 命名是什么,我就告诉你,你需要在我约定好的 build 方法中描述清楚你这个 widget 的结构
我想什么时候调用,那是我的事
假如文档中有个方法就是叫做 abc123123efg 这个函数,这个函数表示 view 发生大小变动时候会调用。那你就只能@override 这个 abc123123efg 函数。因为这些都是约定
框架就是约定