Activity(活动)

  1. 活动的创建与基本用法
    a) 什么是活动(layout——soul)
    b) 创建活动(2种方式)
    c) 创建和加载布局
    1)首先用AS创建一个add no activity项目名使用ActivityTest,包名为默认的com.example.activitytest。
    2)右击app.java.com.example.activitytest包,new–>Activity–>Empty Activity,将活动命名为FirstActivity,不勾选Generate(生成) Layout和Launcher Activity选项。 其中Layout是布局用的,而Launcher Activity是用于将当前活动设置为Main活动。
    3)打开刚才创建的FirstActivity.java,可以看到AS已经自动重写了onCreate()方法。
    4)创建布局
    在res目录右击,new–>Directory(目录),创建layout目录。右击layout–>Layout resource file,创建布局文件first_layout.xml。

  2. 活动的生命周期
    a) 帮助文档:
    b) 生命周期的5种状态
    i. 启动
    ii. 运行
    iii. 暂停
    iv. 停止
    v. 销毁
    c) 生命周期方法
    1)在Activity的onCreate()中调用finish()方法,则执行的生命周期方法顺序为:onCreate() -> onDestroy();
    2)在Activity的onStart()中调用finish()方法,则执行的生命周期方法顺序为:onCreate() -> onStart() -> onStop() -> onDestroy()

  3. Intent的基本属性及用法
    a) 显示Intent
    1.显式用法:
    Intent intent =new Intent(this,TargetActivity.class);
    startActivity(intent);
    其中,this指的是当前的.java文件,TargetActivity.class即是要跳转的页面,简而言之,显式用法就是其目标组件是确定的。
    b) 隐式Intent
    较之显式用法,隐式用法是没有明确的目标组件的。

  4. 活动间的数据传递
    a) 简单的数据传递
    i. Intent.putextra(key,vaule)
    ii. getIntent()
    iii. 通过key拿到相应的vaule
    b) 数据包传递
    i. Bundle对象,通过Bundle.putString(Int)
    ii. Intent.putextras(bundle)
    iii. Intent.getextras();
    c) 值对象传递
    d) Activity之间数据回传

  5. 活动的启动方式
    当一个Activity在栈顶,它是可视的、有焦点、可接受用户输入的。Android试图尽最大可能保持它活动状态,杀死其它Activity来确保当前活动Activity有足够的资源可使用。当另外一个Activity被激活,这个将会被暂停。

    暂停:在很多情况下,你的Activity可视但是它没有焦点,换句话说它被暂停了。有可能原因是一个透明或者非全屏的Activity被激活。

    当被暂停,一个Activity仍会当成活动状态,只不过是不可以接受用户输入。在极特殊的情况下,Android将会杀死一个暂停的Activity来为活动的Activity提供充足的资源。当一个Activity变为完全隐藏,它将会变成停止。

    停止:当一个Activity不是可视的,它“停止”了。这个Activity将仍然在内存中保存它所有的状态和会员信息。尽管如此,当其它地方需要内存时,它将是最有可能被释放资源的。当一个Activity停止后,一个很重要的步骤是要保存数据和当前UI状态。一旦一个Activity退出或关闭了,它将变为待用状态。

    待用: 在一个Activity被杀死后和被装在前,它是待用状态的。待用Acitivity被移除Activity栈,并且需要在显示和可用之前重新启动它。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值