161012 随笔

来源:互联网 发布:js手机在线编辑 编辑:程序博客网 时间:2024/06/08 01:49

1)jni调用过程

2)app结构

Linux kernel  (Linux内核)

Libraries (系统运行库或c/c++库)

Application Framework (开发框架包)

Applications (应用程序)

3)activity的生命周期

activity类位于android.app包,继承java.lang.Object,android.content.Context,android.app.ApplicationContext,android.app.Activity

activity创建一个窗口,通过setContentView(int)将UI绘制到窗口上

activity中比较重要的两个方法:onCreate(Bundle)和onPause()

前者使用setContentView(int)载入在资源文件中定义的UI

使用findViewById(int)获取UI中定义的窗口

onPause价值多体现在activity被覆盖时各种数据和状态的保存(例如使用ContentProvider保存实时数据)

Context.startActivity(),需要所有的activity类都需要在AndroidManifest.xml文件中定义相关activity项

系统使用activity栈管理单个activity,activity常见有4中状态

1.位于activity栈顶,即屏幕的顶部,为活动状态

2.当某个activity失去焦点,但依然可见

(例如,一个新的非全屏的activity或者一个透明的activity被放置栈顶),这种状态叫做Paused(暂停)

一个Paused状态的activity仍然保持所有的状态,成员信息,和窗口管理器保持连接。但在系统内存过低情况下可能会被killed

3.一个activity被另一个activity完全覆盖时,这种状态叫做Stopped(停止)

Stopped状态的activity也保持所有状态和成员信息,但不再可见

public class Activity extends ApplicationContext{ 

    protected void onCreated(Bundle icicle) {}

    protected void onStart() {}

    protected void onRestart() {}

    protected void onResume() {}

    protected void onFreeze(Bundle outlcicle) {}

    protected void onPause() {}

    protected void onStop() {}

    protected void onDestory() {}

}

 

0 0
原创粉丝点击