安卓学习笔记2.1 Activity 概述


一、学习目标

  1. 使用两种方式创建Activity
  2. 在项目清单文件里注册Activity
  3. 将某个Activity设置启动Activity

二、新课学习

  • 学习安卓开发,重要资料就是谷歌给出的安卓开发者资源:
    https://developer.android.google.cn
    在这里插入图片描述
  • 单击【文档】
    在这里插入图片描述
  • 打开开发者指南
    在这里插入图片描述
  • 寻找Activity的相关内容
    在这里插入图片描述

(一)Activity简介

  • Activity 类是 Android 应用的关键组件,而 Activity 的启动和组合方式则是该平台应用模型的基本组成部分。在编程范式中,应用是通过 main() 方法启动的,而 Android 系统与此不同,它会调用与其生命周期特定阶段相对应的特定回调方法来启动 Activity 实例中的代码。
  • 移动应用体验与桌面体验的不同之处在于,用户与应用的互动并不总是在同一位置开始,而是经常以不确定的方式开始。例如,如果您从主屏幕打开电子邮件应用,可能会看到电子邮件列表,如果您通过社交媒体应用启动电子邮件应用,则可能会直接进入电子邮件应用的邮件撰写界面。
  • Activity 类的目的就是促进这种范式的实现。当一个应用调用另一个应用时,调用方应用会调用另一个应用中的 Activity,而不是整个应用。通过这种方式,Activity充当了应用与用户互动的入口点。您可以将Activity实现为 Activity类的子类。
  • Activity 提供窗口供应用在其中绘制界面。此窗口通常会填满屏幕,但也可能比屏幕小,并浮动在其他窗口上面。通常,一个 Activity 实现应用中的一个屏幕。例如,应用中的一个 Activity 实现“偏好设置”屏幕,而另一个 Activity 实现“选择照片”屏幕。
  • 大多数应用包含多个屏幕,这意味着它们包含多个 Activity。通常,应用中的一个 Activity 会被指定为主 Activity,这是用户启动应用时出现的第一个屏幕。然后,每个 Activity 可以启动另一个 Activity,以执行不同的操作。例如,一个简单的电子邮件应用中的主 Activity 可能会提供显示电子邮件收件箱的屏幕。主 Activity 可能会从该屏幕启动其他 Activity,以提供执行写邮件和打开邮件这类任务的屏幕。
  • 虽然应用中的各个 Activity 协同工作形成统一的用户体验,但每个 Activity 与其他 Activity 之间只存在松散的关联,应用内不同 Activity 之间的依赖关系通常很小。事实上,Activity 经常会启动属于其他应用的 Activity。例如,浏览器应用可能会启动社交媒体应用的“分享”Activity。
  • 要在应用中使用 Activity,您必须在应用的清单中注册关于 Activity 的信息,并且必须适当地管理 Activity 的生命周期。

(二)创建自定义Activity

  • 基于Empty Activity创建安卓应用Demo2_1
    在这里插入图片描述

1、基于普通类创建自定义Activity

  • net.xqf.demo2_1包里新建一个普通Java类
    在这里插入图片描述

  • 输入类名LoginActivity
    在这里插入图片描述

  • 给类添加文档注释
    在这里插入图片描述

  • res/layout目录里创建布局文件activity_loginLoginActivity作为用户界面
    在这里插入图片描述

  • 设置布局文件名 - activity_login
    在这里插入图片描述

  • 单击【Finish】按钮
    在这里插入图片描述

  • 切换到Code视图
    在这里插入图片描述

  • 设置线性布局gravity和orientation属性,并且添加一个标签,设置相关属性
    在这里插入图片描述

  • 修改LoginActivity,继承AppCompatActivity
    在这里插入图片描述

  • 创建回调方法onCreate(),利用布局资源文件设置用户界面
    在这里插入图片描述

  • 现在启动应用,我们看到的是MainActivity界面,后面我们将LoginActivity设置为启动Activity,重启应用,我们就可以看到LoginActivity界面了。

2、基于模板来创建自定义Activity

  • 基于Empty Activity模板创建自定义Activity
    在这里插入图片描述

  • 配置Activity信息
    在这里插入图片描述

  • 单击【Finish】按钮
    在这里插入图片描述

  • 改成线性布局,设置gravity和orientation属性,添加一个标签控件,并设置相关属性
    在这里插入图片描述

  • 在实际应用开发中,我们推荐采用第二种方式来创建自定义Activity。

(三)注册自定义Activity

1、查看项目清单文件

  • 点开AndroidManifest.xml文件
    在这里插入图片描述

  • 只有自己继承AppCompatActivity创建的自定义Activity,才需要在项目清单文件里注册。刚才我们创建的LoginActivity就需要我们自己在项目清单文件里注册,而基于模板创建的RegisterActivity,系统已经帮我们注册好了。

2、注册LoginActivity

-在<application>元素里添加一个<activity>元素,注册LoginActivity
在这里插入图片描述

  • 可以设置LoginActivity和RegisterActivyt的label属性
    在这里插入图片描述

  • 在字符串资源文件strings.xml里定义loginregister变量,修改app_name变量值
    在这里插入图片描述

  • 再查看安卓项目清单文件
    在这里插入图片描述

  • 启动应用,查看效果
    在这里插入图片描述

  • 看到的是MainActivity窗口,如果想启动应用时首先看到的是LoginActivity窗口,那么就要在项目清单文件里将LoginActivity设置为启动Activity(Launcher Activity)。

(四)设置启动Activity

1、设置启动Activity的方法

  • <activity>元素里添加意图过滤器来设置启动Activity
    在这里插入图片描述

2、将LoginActivity设置为启动Activity

  • 给LoginActivity设置意图过滤器
    在这里插入图片描述

  • 启动应用,查看效果
    在这里插入图片描述

3、将RegisterActivity设置为启动Activity

  • 给RegisterActivyt设置意图过滤器
    在这里插入图片描述

  • 启动应用,查看效果
    在这里插入图片描述

三、上机操作

(一)创建按钮

  • 打开activity_register.xmlactivity_login.xml创建按钮
    在这里插入图片描述
    在这里插入图片描述

(二)给按钮添加事件

  • 打开RegisterActivityLoginActivity并添加按钮点击事件
    在这里插入图片描述
    在这里插入图片描述

(三)运行程序查看结果

请添加图片描述

猜你喜欢

转载自blog.csdn.net/qq_41301333/article/details/127796058