这是我参与「第四届青训营 」笔记创作活动的的第9天
今天是7月31日,今天继续自学有关Android的知识,学习了UI、UI组件和布局方式的相关内容。整理了相关笔记。
UI
UI全称:User Interface
UI界面由许多个不同界面的UI组件构成,UI组件由Android SDK提供
UI组件
UI组件分为文本组件(TextView)、图片组件(ImageView)、按钮组件(Button)、输入框组件(EditView)、复选框组件(CheckView)、单选按钮(RadioButton)等,常规的组件大多数由Android Framework中的android.widget包提供。
通用的组件属性和方法
通用属性:id、height、width、margin、padding等
通用方法:SetID(@Idres int id)
setLavoutParams(ViewGroup.LavoutParamsparams)
、setPadding (int left, int top, int right, int bottom)
等方法
特定属性和方法
特定属性:TextView、ImageView、CheckBox等
特定方法包括其对应的set方法和其它的方法。
布局
常用的布局分为四种:LinearLayout(线性布局)、RelativeLayout(相对布局)、FrameLayout(框架布局)、ConstraintLayout(限制布局)
LinearLayout
以水平或垂直方向排列组件,将所有的子视图在单个方向(垂直或水平)保持对齐,LinearLayout适用于需要线性排布组件的场景。
RelativeLayout
通过相对另一个容器(父容器或兄弟组件)的位置排列组件,RelativeLayout可以消除嵌套视图组并使布局层次结构保持扁平化,从而提高性能,一个Relativelayout可以替换多个嵌套的LinearLayout组,适用于复杂的布局场景
FrameLayout
FrameLayout以层级叠加的方式排列组件,适用于层级排列场景(比如在一个大的组件上还有需要有一个小组件在其上层)
ConstraintLayout
ConstraintLayout通过约束组件位置排列组件,它拓展了布局的方式,让布局不再局限。ConstraintLayout的所有视图均根据同级视图与父布局之间的关系进行布局,它也和RelativeLayout可使用扁平视图层次结构(无嵌套视图组)创建复杂的大型布局,总的来说,它适用于复杂的场景,也非常推荐使用。
总结
今天简单了解了UI和UI组件,以及组件的四种布局方式,了解到我们平时使用的Android界面由什么组成和它的布局方式。