什么是Activity
活动(Activity)是最基本的Android应用程序组件(另外三个是Service、BroadcastReceiver和ContentProvider)。在应用程序中,一个活动对应一个用户交互界面。每个活动都通过继承活动基类而被实现为一个独立的活动类,在这些Activity类中将使用setContentView(view)方法来显示由视图控件组成的用户界面,并对用户通过这些视图控件所触发的事件做出响应。
大多数应用程序都是由多个屏幕显示组成的。这里的每个屏幕都是一个活动,很容易实现从一个屏幕到另一个屏幕并完成新的活动。因为Android应用的多个Activity组成Activity栈,当前活动的Activity位于栈顶,所以,当打开一个新的屏幕时,之前的屏幕会被置为暂停状态并压入历史堆栈中。用户可以通过回退操作退回到之前打开过的屏幕,也可以选择性的移去一些没有必要保留的屏幕。
activity是Context的子类,同时实现了ComponentCallbacks2 , KeyEvent.Callback , LayoutInflater.Factory2 ,View.OnCreateContextMenuListener, Window.Callback接口。Context是抽象类,由继承关系可知,Activity其实就是一个Context。
ComponentCallbacks2:定义了内存管理的接口,内存过低时的回调和处理接口
KeyEvent.Callback :键盘事件响应的回调接口
LayoutInflater.Factory2:通过LayoutInflater来inflate一个layout时的回调接口
Window.Callback:Activity 靠这个接口才有机会对消息进行处理,这部分涉及到消息的传递。
OnCreateContextMenuListener:上下文菜单显示事件的监听接口,通过实现该方法来处理上下文菜单显示时的一些操作。