歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> 從源碼中Activity 的定義來理解 Activity

從源碼中Activity 的定義來理解 Activity

日期:2017/3/1 10:17:11   编辑:Linux編程

首先我們來看下源碼中源於Activity的定義:

  1. public class Activity extends ContextThemeWrapper
  2. implements LayoutInflater.Factory2,
  3. Window.Callback, KeyEvent.Callback,
  4. OnCreateContextMenuListener, ComponentCallbacks2 {
  5. ...
  6. }

下面我們來詳細分析每一部分的具體意義:

extends ContextThemeWrapper表示Activity本質上是一個ContextThemeWrapper,而ContextThemeWrapper具體是什麼呢?看ContextThemeWrapper在源碼中的定義:

  1. public class ContextThemeWrapper extends ContextWrapper {
  2. ...
  3. }

可見ContextThemeWrapper是一個ContextWrapper,繼續往下看:

  1. public class ContextWrapper extends Context {
  2. Context mBase;
  3. ...
  4. }

ContextWrapper本質上是一個Context,context 的定義如下:

  1. public abstract class Context {
  2. ...
  3. }

整體結構如下圖所示

Copyright © Linux教程網 All Rights Reserved