zoukankan      html  css  js  c++  java
  • 小白学phoneGap《构建跨平台APP:phoneGap移动应用实战》连载三(通过实例来体验生命周期)

    4.1.2  通过实例来亲身体验Activity的生命周期

    上一小节介绍了Activity生命周期中的各个过程,本小节将以一个简单的实例来使读者亲身体验到Activity生命周期中的各个事件。

    在Eclipse中新建一个Androidproject。命名为example4_1,改动其MainActivity类中的内容如范例4-1所看到的。

    【范例4-1Activity生命周期的演示】

    01     //此处省略若干个导入文件,由Eclipse自己主动生成
    02     public classMainActivity extends Activity {                                            //类MainActivity继承类Activity
    03              String TAG="Activity生命周期事件";
    04              @Override
    05              protected voidonCreate(Bundle savedInstanceState) {
    06                        super.onCreate(savedInstanceState);
    07                        setContentView(R.layout.activity_main);
    08                        Log.e(TAG,"启动onCreate事件");
    09              }
    10              @Override
    11              protected voidonDestroy() {                                                            //重写onDestroy事件
    12                        // TODO Auto-generatedmethod stub
    13                        super.onDestroy();
    14                        Log.e(TAG,"启动onDestroy事件");                                        //在LogCat中显示记录
    15              }
    16              @Override
    17              protected void onPause(){
    18                        // TODO Auto-generatedmethod stub
    19                        super.onPause();
    20                        Log.e(TAG,"启动onPause事件");
    21              }
    22              @Override
    23              protected voidonRestart() {
    24                        // TODO Auto-generatedmethod stub
    25                        super.onRestart();
    26                        Log.e(TAG,"启动onRestart事件");
    27              }
    28              @Override
    29              protected void onResume(){
    30                        // TODO Auto-generatedmethod stub
    31                        super.onResume();
    32                        Log.e(TAG,"启动onResume事件");
    33              }
    34              @Override
    35              protected void onStart(){
    36                        // TODO Auto-generatedmethod stub
    37                        super.onStart();
    38                        Log.e(TAG,"启动onStart事件");
    39              }
    40              @Override
    41              protected void onStop() {
    42                        // TODO Auto-generatedmethod stub
    43                        super.onStop();
    44                        Log.e(TAG,"启动onStop事件");
    45              }
    46     }


    执行之后就可以看到在LogCat窗体中显示出如图4-2所看到的的内容。

    提示:能够通过设置过滤器来过滤LogCat中的信息,使之仅仅显示与该Activity有关的记录,如图4-3所看到的。过滤后的内容如图4-4所看到的。

    回过头来再看上一小节中对启动Activity的描写叙述,要启动一个Activity须要经历onCreate、onStart、onResume 3个事件。在图4-4中能够确认这一点。

    能够通过对手机的进一步操作来验证上一小节中的内容,比方点击HOME键或返回键来观察LogCat中的日志记录。

    图4-2  Activity启动时所经历的事件

    图4-3  利用Tag标签过滤LogCat中的信息


    图4-4  过滤后的LogCat窗体

    在Eclipse的代码编辑区域右击。依次选择Source|Overridemethods命令能够看到一些其它的事件,如图4-5所看到的。

    图4-5  Activity中的一些其它事件

    这类事件大多相应着应用的某一特定操作或错误。比方事件OnTitleChanged就是在应用的标题被改动时由系统所发出的事件;再比方听音乐。音乐播放到1分50秒时突然打进来一个电话。系统就会对播放器的Activity使用onPause方法。同一时候启动一个接电话的Activity,当用户接完电话后则又会通过onRestar方法和onStar方法返回音乐播放界面,并调整音乐播放进度为1分50秒。


    清华大学出版社推出的《构建跨平台APP:Phonegap移动应用实战》是一本APP实战书,包括20多个APP实例和3个APP项目,还结合了HTML5移动开发。

    本书面向移动开发入门人员,低门槛。浅阅读,最适合移动APP创业小白。本次公布第3~5章作为读者学习的基础。有兴趣的欢迎购买本书!欢迎加群:348632872,向作者直接提问交流。


  • 相关阅读:
    返回顶部
    判断元素在数组中
    Vue.js相关知识4-路由
    Vue.js相关知识3-路由
    Vue.js相关知识2-组件
    Vue.js相关知识1
    element表格左右滚动条在总计的上面怎么解决
    JAVA的安装及配置环境变量
    uni-app中使用vuex
    前端常用设计模式
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/7189896.html
Copyright © 2011-2022 走看看