Android Activity源码解析ing

在Android开发中,Activity 是应用的核心组件之一,它提供了一个屏幕,用户可以在上面进行交互以完成某项任务。Activity 的源码解析涉及到多个核心类和核心方法,这些类和方法共同构成了Android应用界面的基础。下面是一些关键的类、方法以及它们的作用和原理:

核心类

  1. Activity

    • 作用Activity 是Android应用中的一个单屏幕,用于与用户进行交互。它是Context的子类,因此可以访问应用的资源和类,以及调用应用级操作如启动活动、广播和接收意图等。
    • 核心方法
      • onCreate(Bundle savedInstanceState): 当活动第一次创建时调用,用于初始化活动。
      • onStart(): 当活动对用户可见时调用。
      • onResume(): 当活动开始与用户交互时调用。
      • onPause(): 当活动被其他活动部分遮挡时调用。
      • onStop(): 当活动完全不可见时调用。
      • onDestroy(): 当活动即将被销毁时调用。
  2. Context

    • 作用Context 是一个抽象类,允许访问特定资源和类以及调用应用级操作如启动活动、广播和接收意图等。Activity 继承自 ContextThemeWrapper,后者继承自 Context,因此 Activity 也是一个 Context
    • 核心方法
      • getResources(): 获取应用的资源。
      • getPackageManager(): 获取包管理器,用于访问包信息、安装的应用等。
      • startActivity(Intent intent): 启动一个新的活动。
public class Activity extends ContextThemeWrapper
        implements LayoutInflater.Factory2,
        Window.Callback, KeyEvent.Callback,
        OnCreateContextMenuListener, ComponentCallbacks2,
        Window.OnWindowDismissedCallback {....}
  1. Intent

    • 作用Intent 是不同组件之间通信的主要方式,它用于从一个组件请求另一个组件执行特定的操作。在 Activity 的上下文中,Intent 常用于启动新的活动或发送广播。
    • 核心方法
      • setAction(String action): 设置意图的动作。
      • putExtra(String name, Bundle value): 添加额外的数据到意图中。
      • getExtras(): 获取意图中所有的额外数据。
  2. FragmentManagerFragment

    • 作用FragmentManager 用于在 Activity 中管理 Fragment 的生命周期和事务。Fragment 允许你将UI分解成可重用的组件,这些组件可以在不同的活动中重用。
    • 核心方法FragmentManager):
      • beginTransaction(): 开始一个事务,用于添加、移除或替换 Fragment
      • commit(): 提交事务。
    • 核心方法Fragment):
      • onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState): 创建并返回 Fragment 的视图。
      • onActivityCreated(Bundle savedInstanceState): 当 ActivityonCreate() 方法完成后调用。

原理

  • 生命周期管理:Android通过调用 Activity 的生命周期方法来管理活动的创建、显示、隐藏、暂停、停止和销毁。这些方法的调用时机由Android系统控制,以确保活动在正确的状态下执行相应的操作。
  • 组件间通信Intent 是一种跨组件通信的机制,它允许不同组件(如活动、服务、广播接收器等)之间进行数据传递和请求。通过 Intent,可以指定要执行的操作、传递数据以及指定接收组件的类别。
  • 资源管理Context 提供了访问应用资源(如布局文件、字符串、图片等)的接口。Activity 作为 Context 的子类,可以方便地访问这些资源,并在UI中展示它们。
  • UI组件重用Fragment 允许开发者将UI分解成可重用的组件,这些组件可以在不同的活动中重用。通过 FragmentManager,可以灵活地管理 Fragment 的生命周期和事务,实现复杂的UI布局和交互。

这些核心类和方法的组合使用,构成了Android应用界面的基础,使得开发者能够创建出丰富、交互性强的应用。

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值