### 1.1.1 一切皆为组件 组件(Widget)是Flutter应用程序用户界面的基本构建块。不仅按钮、输入框、卡片、列表这些内容可作为Widget,甚至将布局方式、动画处理都视为Widget。所以Flutter具有一致的统一对象模型:Widget。 Widget可以定义为: ·一个界面组件(如按钮或输入框)。 ·一个文本样式(如字体或颜色)。 ·一种布局(如填充或滚动)。 ·一种动画处理(如缓动)。 ·一种手势处理(GestureDetector)。 Widget具有丰富的属性及方法,属性通常用来改变组件的状态(颜色、大小等)及回调方法的处理(单击事件回调、手势事件回调等)。方法主要是提供一些组件的功能扩展。比如:TextBox是一个矩形的文本组件,其属性及方法如下: ·bottom:底部间距属性。 ·direction:文本排列方向属性。 ·left:左侧间距属性。 ·right:右侧间距属性。 ·top:上部间距属性。 ·toRect:导出矩形方法。 ·toString:转换成字符串方法。