安卓期末考试知识总结

第一章:Android基础入门

习题总结

  1. Android系统采用分层架构,由高到低分为4层,主要为:应用程序层、应用程序框架层、核心类库、Linux内核
  2. 在Android项目程序开发完成后中,必须__打包成_正式的Android安装文件,才能发布到互联网上让用户下载使用。
  3. Android 工程中src目录下存放_java__文件

重点知识

  1. 应用程序层:应用程序层是一个核心应用程序的集合。手机上所有的应用程序都属于这一层,联系人程序、短信程序
  2. 应用程序框架层:应用程序框架层主要提供构建应用程序时用到的各种API,例如:活动管理器、通知管理器、内容提供者
  3. 核心类库:核心类库中包含了系统库及Android运行环境。
    (1)系统库主要通过c/c++库为Android系统提供主要的特性支持
    (2)Android运行时库主要提供一些核心库,允许开发者使用java语言来编写Android应用程序
  4. Linux内核:为Android·设备的各种硬件提供底层的驱动,如显示驱动、音频驱动、蓝牙驱动、电源管理驱动

Android工程中的assets目录主要存放一些文件资源,这些文件会被原封不动的打包到APK文件中

更为细分的5层架构:应用程序层、应用程序框架层、核心类库、硬件抽象层 (HAL)、Linux内核
在这里插入图片描述
硬件抽象层 (HAL) 提供标准界面,向更高级别的 Java API 框架显示设备硬件功能。HAL 包含多个库模块,其中每个模块都为特定类型的硬件组件实现一个界面,例如相机或蓝牙模块。当框架 API 要求访问设备硬件时,Android 系统将为该硬件组件加载库模块。

第二章:Android常见布局、控件

知识总结

  1. Android应用的界面是由View 对象和 ViewGroup 对象构建而成的。ViewGroup继承自View,ViewGroup作为容器盛装界面中的其他控件
    Android应用的每个界面的根元素必须有且只有一个ViewGroup容器

Android常见布局和特点:
Android中常见的五种布局:相对布局(RelativeLayout)、线性布局(LinearLayout)、表格布局(TableLayout)、帧布局(FrameLayout)、约束布局(ConstraintLayout)

  1. 相对布局(RelativeLayout):相对布局是一种基于相对位置的布局方式,可以通过设置组件相对于其他组件或父容器的位置来实现布局。相对布局的特点是可以实现较为复杂的布局,但是对于嵌套较多的布局会影响性能。
  2. 线性布局(LinearLayout):线性布局是一种按照线性方向排列组件的布局方式,可以设置水平或垂直方向。线性布局的特点是简单易用,但是对于复杂的布局可能不够灵活。
  3. 表格布局(TableLayout):表格布局是一种按照表格形式排列组件的布局方式,可以设置行和列。表格布局的特点是可以实现类似表格的布局,但是对于不规则的布局可能不够灵活。
  4. 帧布局(FrameLayout):帧布局是一种将组件按照层次关系排列的布局方式,后添加的组件会覆盖前面的组件。帧布局的特点是可以实现简单的层叠布局,但是对于复杂的布局可能不够灵活。
  5. 约束布局(ConstraintLayout):约束布局是一种基于约束关系排列组件的布局方式,可以设置组件之间的相对位置和大小。约束布局的特点是可以实现复杂的布局,同时对于性能的影响较小。

Android中ListView和RecyclerView都是常用的列表控件,它们的主要区别如下:

  • 性能方面:RecyclerView的性能比ListView更好,因为RecyclerView使用了ViewHolder模式,可以更好地重用视图,减少了内存的使用。
  • 布局方面:ListView只支持线性布局,而RecyclerView支持多种布局,包括线性布局、网格布局、瀑布流布局等。
  • 动画方面:RecyclerView支持ItemAnimator,可以方便地实现添加、删除和移动Item的动画效果。
  • 数据源方面:ListView使用Adapter作为数据源,而RecyclerView使用Adapter和LayoutManager作为数据源和布局管理器。
  • 缓存方面:RecyclerView支持灵活的缓存机制,可以自定义缓存策略,而ListView的缓存机制比较固定。
  • 总的来说,RecyclerView比ListView更加灵活和高效,而ListView则更加简单易用。

Android开发中实现Button按钮点击事件的方式有以下几种:

  1. 在布局文件中声明onClick属性:在布局文件中声明Button的onClick属性,然后在对应的Activity中实现对应的方法,当Button被点击时,该方法会被调用。
  2. 通过匿名内部类实现OnClickListener接口:在对应的Activity中,通过设置Button的setOnClickListener()方法,传入一个实现了OnClickListener接口的匿名内部类,当Button被点击时,该匿名内部类的onClick()方法会被调用。
  3. 通过实现OnClickListener接口:在对应的Activity中,实现OnClickListener接口,并在onClick()方法中处理Button的点击事件,然后通过设置Button的setOnClickListener()方法,将该OnClickListener实例传入,当Button被点击时,onClick()方法会被调用。
  4. 通过继承Button类并重写onClick()方法:在对应的Activity中,创建一个自定义的Button类,继承Button类并重写onClick()方法,在onClick()方法中处理Button的点击事件,然后在布局文件中使用该自定义Button类。

  • GridLayout是Android4.0(API14)之后的布局,它用一组没有宽度的线将屏幕区域划分为纵横交错的格子,将子控件放在格子(cell)里。网格线由网格线下标表示,有n列的网格就有n+1个网格下标,编号从0到n。
  • Cell中的子控件可以通过android:layout_column及android:layout_row来确定它在网格中的位置,由android:layout_columnSpan和android:layout_rowSpan来确定该子控件占据多少列或多少行。
  • 如果没有指定子控件的位置,则由GridLayout的布局属性orientation, rowCount 及 columnCount自动定位。
  • orientation表示布局中View的排列主序; rowCount表示行的个数, columnCount表示列的个数

习题总结

  1. 用于给控件指定主题的属性是style
  2. 用于给Activity指定主题的属性是scheme
  3. Android UI开发中,如果TableLayout的第一个TableRow有两个控件,第二个TableRow有三个控件,那这个TableLayout就有(3)列
  4. Android相对布局中,使控件相对父控件底部对齐使用的属性是android:layout_alignParentBottom
  5. Android UI开发中,设置Activity的(android:theme=“@android:style/Theme.Dialog”)属性可以使Activity显示为对话框样式
  6. 设置GridLayout中的某控件占3行的是android:layout_rowSpan=“3”
  7. android:gravity是用于设置控件内部内容的对齐方式,例如文本、图片等。而android:layout_gravity是用于设置控件在父容器中的对齐方式,例如控件在父容器中的居中、靠左、靠右等。简单来说,android:gravity是设置控件内部内容的对齐方式,而android:layout_gravity是设置控件在父容器中的对齐方式。
  8. Android UI开发中,在GridLayout中如何设置某控件占3行android:layout_rowSpan=“3”
  9. Android UI开发中,如果一个应用中使用了主题,同时应用下的View也使用了样式,那么当主题和样式中的属性发生冲突时,主题的优先级低于样式
  10. Toast.makeText(context,text,time)必须在调用了show()方法后才能把信息显示出来
  11. Android UI开发中,网格布局是【Android4.0】新增的布局,它实现了控件的交错显示,能够避免因布局嵌套对设备性能的影响,更利于自由布局的开发
  12. EditText控件可以输入文字,且可以通过inputType属性控制输入的内容只能是数字或者字母等
  13. Android开发中,想让软件支持简体中文、美式英语两种环境,需要在res目录下新建两个values文件夹,分别命名为values-zh-rCN和values-en-rUS。
  14. Android UI开发中,TableLayout的行数由_ TableRow_对象控制的
  15. 主题 是应用到整个Activity和Application的样式
  16. Android系统中,_样式_用于定义布局显示在界面上的风格
  17. 主题与样式在代码结构上是一样的,不同之处在于主题的引用要在 AndroidManifest.xml 文件中引用
  18. Android有自己的国际化规范和方法,布局中所有文字资源只有通过_ android:text=“@string/xxx”__方式引用才能起到效果
  19. 在清单文件中,<application>标签中的andorid:theme属性,代表的是_整个应用程序_主题的样式,而<activity>标签中是改变_当前界面_主题的样式
  20. Android系统中,__样式__用于定义控件的风格
  21. 在Activity代码中同样也可以引用自定义主题,只需要在Activity类onCreate()方法内添加**setTheme()**方法即可
  22. Toast.makeText(context,text,time)中的text是提示的信息

猜你喜欢

转载自blog.csdn.net/yang2330648064/article/details/131175842
今日推荐