为了账号安全,请及时绑定邮箱和手机立即绑定

重识Activity——生命周期详解

标签:
Java Android
1. 单个Activity生命周期
    *  显示状态——onCreate()、onStart()、onResume()
    * 隐藏状态——onPause():部分可见、onStop():隐藏,黑屏状态
    * 销毁——onDestroy()

2. 多个Activity生命周期交互
    * 第一个Activity启动——依次调用onCreate()、onStart()、onResume ()
    * 第二个Activity启动——第一个activity调用onPause (),第二个activity调用onCreate ()、onStart()、onResume(),第一个Activity调用onStop()
    * 再次返回第一个activity—— 第二个Activity调用onPause ()、第一个Activity调用onRestart():不用再onCreate()、onStart()、onResume ();此时第二个Activity调用onStop()、onDestroy(),此时第二个Activity生命周期结束

3. Activity生命周期交互设计思想

    * 例子:当处在音乐播放页面时,此时来电,音乐activity调用onPause (),重写该方法暂停音乐,否则会影响通话;
    * 另一方面,音乐activity调用onPause ()后,紧接着调用onStop(),电话结束后,再次回到音乐播放页面就是黑屏了

4. 横竖屏切换

    * 切换时相当于创建了一个新的Activity,原有的activity生命周期结束
    * 切换时,可以通过onSaveInstanceState 方法中Bundle对象保存切换前activity信息,然后在onCreate()的Bundle对象获取

5. Activity生命周期的应用

    * onPause ()——添加暂停该页面的其他操作
    * onResume ()——当返回页面时,添加恢复原有页面的操作
    * onDestroy()——结束该页面时,释放该页面其他操作的资源

6. 启动Activity

    * 直接启动
    * 
        * 只通过Intent——Intent intent=new Intent(one.this, two.class);
        * 辅以Component——Intent intent=new Intent();ComponentName component=new ComponentName(one.this, two.class);  intent.setComponent(component );startActivity(intent);

    * 匿名启动
    * 
        * 在AndroidManifest中对应的activity添加<intent-filter>——》<action android :name=“1”>——》intent.setAction("1");——》startActivity(intent);

    * 启动系统常见Activity
    * 
        * 启动浏览器——intent.setAction(Intent.ACTION_VIEW);Uri url=Uri.parse("http://www.imooc.com"); intent.setData(url);startActivity(intent);
        * 启动相册——intent.setAction(Intent.ACTION_GET_CONTENT);intent.setType(“image/*”);startActivity(intent);
        * 发送短信——intent.setAction(Intent.ACTION_SEND);intent.setType(“text/plain”);intent.putExtra(Intent.EXTRA_TEXT,"hello !");startActivity(intent);
        * 打开电话——intent.setAction(Intent.ACTION_VIEW );Uri url=Uri.parse("tel:123456"); intent.setData(url); startActivity(intent);
        * 其它页面可以通过Android文档查看Intent
点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
全栈工程师
手记
粉丝
70
获赞与收藏
147

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消