zoukankan      html  css  js  c++  java
  • Android_Activity的生命周期、跳转方式及参数传递、启动模式。

     

    Activity的生命周期:

    onCreat ,onStart,onResume,onPause,onRestart,onStop,onDestroy

     

    Activity之间的跳转分为显式跳转和隐式跳转。

     

    隐式跳转:

    Intent intent=new Intent();            

    intent.setAction("android.intent.action.BAcivity");
    startActivity(intent);

     

    显式跳转:

    Intent intent=new Intent(AActivity.class,BActivity.class);

    //intent.setClass(class,class)
     //intent.setClassName(class,"class url");

     

    参数传递:

    Bundle bundle=new Bundle();
    bundle.putString("string","---hahaha---");
    intent.putExtras(bundle);
    startActivity(intent);

     

    需回传参数的参数传递:

    AActivity:

     Intent intent=new Intent(Activity.this,BActivity.class);
     Bundle bundle=new Bundle();
     bundle.put__(tag,value);
     intent.putExtras(bundle);
     startActivityForResult(intent,requestcode);//requestcode:请求标记

     

    @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
    }

     

     

    BActivity:

    bundle.put__(tag,value);
    Intent intent=new Intent();
    intent.putExtras(bundle);
    setResult(requestcode,intent);

     

     

    Activity的启动模式:

     

    通过LaunchMode可设置Activity的启动模式,分为:

    standard,singleTop,singleTask,singleInstance

     

    每个activity被创建时都会被放入栈中

    standard模式下每个activity的启动都会以重新创建的方式启动。

    singleTop模式下位于栈顶的activity将会被复用。

    singleTask模式下如果栈中原本就存在这个activity,那么它会被复用,且在栈中位于其上的activity都会被销毁。

    singleInstance模式下每个activity被创建时都会独立放进一个栈中,以实现任意复用。

     

    通过在manifest里设置activity的taskAffinity可实现自定义栈

     

     

  • 相关阅读:
    fn project 试用之后的几个问题的解答
    fn project 扩展
    fn project 生产环境使用
    fn project 对象模型
    fn project AWS Lambda 格式 functions
    fn project 打包Function
    fn project Function files 说明
    fn project hot functions 说明
    fn project k8s 集成
    fn project 私有镜像发布
  • 原文地址:https://www.cnblogs.com/XiaoGao128/p/12250224.html
Copyright © 2011-2022 走看看