初学android开发--day06

Activity简介

Activity是四大组件之一,一个App可以有0个或多个Activity

它是一个用来展示用户界面以及与用户进行交互操作的组件
当在一个Activity中按下返回时,Android OS会自动销毁Activity对象
当在一个Activity中启动另外一个Activity时,当前Activity不会被销毁,而是会被压入Activity栈中

Activity跳转的其他Activity可以不是当前Application中的Activity

Activity的创建

1、自定义类,继承Activity
2、复写onCreate方法,并使用setContentView方法设置显示内容
3、在AndroidManifest.xml文件中注册Activity

注意: 以下方式来指定APP默认启动的Activity
<intent-filter>
<action android:name=“android.intent.action.MAIN”/>
<category android:name=“android.intent.category.LAUNCHER” />
</intent-filter>

Activity的跳转

通过Context.startActivity(Intent)的方法可以由一个页面跳转到指定页面

Intent意图,四大组件的粘合剂

显式Intent : 
创建Intent时,已经明确需要启动哪一个具体的Activity
Intent intent = new Intent (Context context, Class destination);
startActivity(intent);
Intent intent = new Intent (String packageName, String className);
startActivity(intent);
隐式Intent:
创建的Intent,不知道具体是哪一个Activity,由Android OS根据action和category进行过滤查找
Intent intent = new Intent (“eye_of_skadi”);
startActivity(intent);

Activity之间的传值(Activity之间的通信)

1、使用Application实现数据共享

自定义一个Application类作为一个单例,并继承Application,源Activity和目标Activity共享其中的数据。

在AndroidManifest文件中的<application>下设置name="自定义Application名字"
2、使用Intent将值传递给Activity

使用Intent的putExtra(String name,String value),其中的值还可以是八种基本数据类型,数组,集合,对象

Activity之间的回传值
通过startActivityForResult()方式启动的目标Activity可以给源Activity返回值
1、源Activity.startActivityForResult(intent, requestCode);
2、目标Activity通过setResult给源Activity设置返回值,然后finish();
3、源Activity中,通过onActivityResult方法处理返回值
Activity生命周期

onCreate 创建Activity时被调用
onRestart Activity被重新显示时被调用
onStart 显示Activity时被调用
onResume Activity获取焦点时被调用(用户可以与Activity交互)
onPause Activity失去焦点时被调用
onStop Activity不可见时被调用
onDestroy Activity销毁时被调用

Activity声明周期总结

ActivityA -> ActivityB ->返回到ActivityA

1、ActivityB将ActivityA覆盖
A:onPause -> B:onCreate -> B:onStart -> B:onResume -> A:onStop
按下返回键后-> B:onPause ->A:onRestart -> A:onStart -> A:onResume -> B:onStop -> B:onDestroy

2、ActivityB没有将ActivityA覆盖
A:onPause -> B:onCreate -> B:onStart -> B:onResume ->
按下返回键后 B:onPause -> A:onResume -> B:onStop -> B:onDestroy


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值