文章目录

  • 前言
  • 一、Activity是什么?
  • 二、创建Activity步骤
    • 1.创建自定义Activity
    • 2.注册自定义Activity
    • 2.设置启动Activity的方法
  • 总结

前言

随着计算机技术的不断发展,软件技术学习这门也越来越重要,很多人都开启了Android学习,本文就介绍了Android中的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步骤

1.创建自定义Activity步骤

基于Empty Activity创建安卓应用Demo2_1

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

在net.hw.demo2_1包里新建一个普通Java类

输入类名LoginActivity

给类添加文档注释

在res/layout目录里创建布局文件activity_login供LoginActivity作为用户界面

 设置布局文件名 — activity_login

点击finish

切换到Code视图

设置线性布局gravity和orientation属性,并且添加一个标签,设置相关属性

修改LoginActivity,继承AppCompaActivity

创建回调方法onCreate(),利用布局资源文件设置用户界面

@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//加载布局文件}

现在启动应用,我们看到的是MainActivity界面,后面我们将LoginActivity设置为启动Activity,

重启应用,我们就可以看到LoginActivity界面了。

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

基于Empty Activity模板创建自定义Activity

配置Activity信息

点击Finish按钮

改成线性布局,设置gravity和orentation属性,添加一个标签控件,并设置相关属性

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

2、注册自定义Activity步骤

(1)查看项目清单

点开AndroidManifest.xml文件

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

(2)注册LoginActivity

在<application>元素里添加一个<activity>元素,注册LoginActivity

可以设置LoginActivity和RegisterActivity的label属性

在字符串资源文件strings.xml里定义login和register变量,修改app_name变量值

 在查看安卓项目清单

 启动应用,查看效果

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

3、设置启动Activity

(1)设置启动Activity的方法

在<avtivity>元素里添加意图过滤器来设置启动Activity

(2)将LoginActivity设置为启动Activity

给LoginActivity设置意图过滤器

启动应用,查看效果

(3)将RegisterActivty设置为启动Activity

给ReginsterActivty设置意图过滤器

启动应用,查看效果


总结

以上就是今天要讲的内容,本文仅仅简单介绍了Activity的使用,而Activity提供了使我们与用户交互的界面。

Activity的概述相关推荐

  1. Androidz之Activity概要学习

    Androidz之Activity概要学习 1.     Activity类概述 Activity(活动)是一个单独的.能获取焦点的,且能与用户交互的东西.所以我们通常在Activity类中的onCr ...

  2. 006 Android之Activity

    文章目录 四大组件之Activity Activety概述 Activity的响应事件 Activity之间的数据传递 数据传递实例 Activity的生命周期 Activity声明周期总结 Acti ...

  3. Activity思维导图

    该图片涉及很多Activity的概述,相信对大家很有帮助. 除了以上六个方法外还有一个onRestart方法,表示文件是否交互用 onCreate()和onDestory():内容是否可见用onSta ...

  4. Android 11 Bubble通知的原理

    说明 本文仅基于android11 背景 定义及性质 Android11推出的完善的新通知API Bubble是一个特殊的通知,可用于聊天场景. 界面类似悬浮窗,可以在某些场景下对悬浮窗进行替换 具体 ...

  5. 基于安卓的四六级英语学习小助手app(android毕业设计)

    目前,当代高校学生都致力于通过大学英语四.六级考试.众所周知,单词量的积累直接影响到英语考试成绩.随着智能手机的普及,基于手机一类的移动终端软件越来越多.建立在Android操作系统上的一系列英语学习 ...

  6. 计算机毕业设计Android手机汽车租赁系统app(源码+系统+mysql数据库+Lw文档)

    项目介绍 目前,随着经济的发展,人民生活水平的提高,使人们对汽车的需求越来越大,而且随着现代科学的发展,计算机进入了几乎一切领域.各行各业都广泛地使用着计算机,他们的数据信息管理离不开计算机技术的支持 ...

  7. Android_Activity_Activity详解

    本博文为子墨原创,转载请注明出处! http://blog.csdn.net/zimo2013/article/details/11896323 1.Activity的概述 Activity是一个应用 ...

  8. 基于Android手机汽车租赁系统app

    目前,随着经济的发展,人民生活水平的提高,使人们对汽车的需求越来越大,而且随着现代科学的发展,计算机进入了几乎一切领域.各行各业都广泛地使用着计算机,他们的数据信息管理离不开计算机技术的支持.从租客的 ...

  9. 基于Android的名片信息管理系统设计与实现

    目 录 摘要 I Abstract II 第1章 绪论 1 1.1 课题的提出与背景 1 1.2 研究的目的及意义 2 1.3国内外研究现状分析 2 1.3.1国外研究现状分析 2 1.3.2国内研究 ...

  10. android activity详解一:概述

    概述 Activities 是一个程序的组件之一.它的主要功能是提供界面. 一个程序一般由多个Activity组成,各activities之间关系很松散,它们之间没有直接的关联.必须有一个activi ...

最新文章

  1. python笔记 print+‘\r‘ (打印新内容时删除打印的旧内容)
  2. java8模拟grouby方法
  3. 专家谈个人用户保护自己网银安全
  4. 【Hibernate】getHibernateTemplate与getSession的区别以及优缺点
  5. 自定义v-drag指令(横向拖拽滚动)
  6. Leetcode算法题(C语言)2
  7. EMC创建出《星际旅行》全息甲板,并利用其模拟数据中心
  8. 生活大爆炸系列之磨望远镜
  9. Git:git commit后撤销commit 提交
  10. Atitit 泛型原理与理解attilax总结
  11. 如何评价路孚特的Datastream工具?
  12. jsoup抓取网页+具体解说
  13. 【excel】绘制双纵坐标轴的图表
  14. 用Gitosis搭建Git服务器(经典资料)
  15. ​【Flutter小记7】​Mac M1 使用 pod install编译常见两种错误解决方案(CocoaPod Error | LoadError)
  16. 华为mate30怎么更换鸿蒙系统,怎么升级到鸿蒙2.0系统呀
  17. PS怎么制作下雨天玻璃水雾图片效果
  18. vue 多层子组件调用父组件的方法(传参方式bind方法 或 注入 provide() {}方法)
  19. 【干货】-- 带你抓取并分析知乎高评分电影
  20. 同济大学符长虹教授作“基于计算机视觉的无人飞行器自主导航研究与应用”为题的报告

热门文章

  1. 自己写jquery表单验证
  2. 5G NR SSB概述
  3. mysql执行计划explain介绍_MySQL中的执行计划explain详解
  4. firefox插件开发和调试
  5. 配置 HTTP 代理(WIN10)、SOCKS 代理(WIN10)和编写 PAC 自动配置脚本
  6. 月薪6000艰难追上海美女路
  7. php数组键值对是什么意思_php数组中键值对怎么理解呢?
  8. idea安装插件plugin(主要针对网络连接不上的情况)
  9. 转载 注解@PostConstruct与@PreDestroy讲解及实例 - 云淡风轻、仅此一抹 - 博客频道 - CSDN.NET http://blog.csdn.net/yaerfeng/art
  10. 安卓桌面软件_iOS便签软件求推荐,有可以在iOS系统上使用的桌面便签软件吗 - 学显...