北理Android课程作业解析:Application, ViewGroup遍历与RecyclerView实践

下载需积分: 0 | DOCX格式 | 1.65MB | 更新于2024-08-04 | 27 浏览量 | 0 下载量 举报
收藏
"北理Android课程作业,张思凡,2019.1.20" 本资源是一份关于Android应用开发的作业,由学生张思凡完成,包含三个练习(Exercise1、Exercise2、Exercise3),主要涉及Android应用程序的基础架构、组件生命周期管理和UI布局的构建。 ### Exercise1 在这一练习中,张思凡创建了一个名为`MyApplication`的自定义`Application`类,该类继承自Android系统的`Application`基类。在`AndroidManifest.xml`文件中,他将这个自定义的`Application`类进行了注册。`MyApplication`类包含了`getName()`和`setName()`方法,用于获取和设置应用的名称。在`Exercise1.java`的`Activity`中,`onCreate()`方法调用`getApplication()`获取当前运行的`Application`对象,并将其转换为`MyApplication`类型。如果`getName()`返回非空值,那么这个值会在`TextView`中显示;否则,不做任何处理。在`onDestroy()`方法中,通过`setName()`保存`TextView`中的文本,这有助于在设备旋转时保持数据状态。 ### Exercise2 在这个练习中,张思凡展示了如何遍历一个`LinearLayout`布局的子视图。通过`ViewGroup`的`getChildCount()`方法获取所有子视图的数量,然后使用`getChildAt()`方法根据索引获取每个子视图对象。他使用队列来实现层次遍历,检查每个视图是否是`ViewGroup`的实例。如果是,那么它的子视图会被添加到队列中继续遍历;如果不是,表示找到了一个`View`实例,计数器加一。此练习的目标是理解和掌握Android布局中视图的层次结构及其遍历。 ### Exercise3 在第三个练习中,张思凡完成了`RecyclerView`中单个项目的XML布局设计。在`Activity`中,他创建了`RecyclerView`的item并配置了适配器(Adapter)。适配器中,他使用了`ViewHolder`模式以提高性能,并实现了点击`RecyclerView`项时跳转到新的`Activity`的功能。同时,通过`Intent`在不同的`Activity`之间传递参数,这在实现聊天室功能时尤其重要。他还设计了一个带有气泡效果的聊天框,使得聊天内容可以区分发送者和接收者。 这份作业涵盖了Android应用开发的核心概念,包括自定义`Application`类、组件生命周期管理、视图遍历以及`RecyclerView`的使用,这些都是Android开发中不可或缺的知识点。通过这些练习,学生能够深入理解Android应用程序的工作原理和开发流程。

相关推荐