当前位置:首页 » 《关注互联网》 » 正文

Android四大组件之一——Activtiy_m0_60557165的博客

28 人参与  2021年09月05日 12:43  分类 : 《关注互联网》  评论

点击全文阅读


新手上路,请多多指教!

Activity是什么?

         Activity英文译为:活动。

        Activity是安卓四大组件(Activity、Service、ContentProvider、BroadcastReceiver)之一,它是一个界面,用户可以通过操作与这个“界面”进行交互从而实现某些操作。

Activity的生命周期

        onCreate()

                在Activity第一次启动的时候执行

        onStart() 

                在Activity界面加载显示出来的时候执行

        onResume()

               在Activity解除了被锁屏状态或者被其他东西盖住了,系统就会调用onResume()方法,让Activity再次今入运行状态

        onPause()

                在Activity被其他东西覆盖住了(对话框)或者锁屏了是调用

        onStop()

                在Activity转到新的Activity或者home箭调用

        onDestroy()       

                在Activity被销毁的时候执行

        

         ps:图片来源于网络

  创建一个Activity

使用软件:android studio

 

              

 Activity之间的“沟通的桥梁”——Intent

        Intent是什么

        Intent译为“意图”,可以指定当前组件要执行的动作、用来不同组件之间的数据传递、启动Activity和Service、发送广播等

        显示意图

        可以直接通过类名开启指定的目标组件

        隐式意图

        可以用来启动其他应用的组件,Android会通过intent filter的action、data或者category来匹配目标的组件

       

启动一个Activity

        Intent的构造方法 

        

        一般启动

//创建一个Intent对象
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
//启动Activity
startActivity(intent);

        带结果启动

            第一个参数是一个Intent对象,第二个参数是请求码

Intent intent=new Intent(MainActivity.this,SecondActivity.class);
startActivityForResult(intent,2);

        

 返回Activty

        一般返回

        调用finsh()方法

        带结果返回

        第一个参数:参数类型是int,是用于知道是谁返回的

        第二个参数:参数类型是Intetn的实例化对象

int result_Code=3;
Intent data=new Intent();
setResult(result_Code,data);
finish();

        接受返回的数据

        当我们通过第一个Acticity通过startActivityForResult()启动了另一个Activity,并且第二个也是带结果的返回,那要怎么处理另外一个的“返回”呢?

        重写第一个Activiy的onActivityResult()方法

@Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if(requestCode==2&&resultCode==3){
            Toast.makeText(MainActivity.this,data.getStringExtra("Result"),Toast.LENGTH_SHORT).show();    
        }
}

向要启动的Activity传递数据

 通过Intent.putExtra()方法把数据存储进去,当调到下个Activity的时候通过Intent.getXXXExtra()方法将数据取出来

        

//MainActiviy
    Intent intent=new Intent(MainActivity.this,SecondActivity.class);
    intent.putExtra("Messsage","This is MainAcitivity's  message!");    
    //启动Activity
    startActivity(intent);
//SencondActivity
    Intent secondInent=getIntent();                  
Toast.makeText(SecondActivity.this,intent.getStringExtra("Message"),Toast.LENGTH_SHORT).show();

         

 

 

   


点击全文阅读


本文链接:http://zhangshiyu.com/post/27031.html

启动  第一个  返回  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 完结文我在恐怖游戏开裁缝铺列表_完结文我在恐怖游戏开裁缝铺(林慕秋)
  • 全书免费谢清禾姜博诚_谢清禾姜博诚全书免费
  • 离婚后我收获真爱,前妻却快死了(秦落音陆轩),离婚后我收获真爱,前妻却快死了
  • 老公把上亿豪宅送养妹后,我把人和房都拆了(顾思思顾言洲)全书免费_(顾思思顾言洲)老公把上亿豪宅送养妹后,我把人和房都拆了后续(顾思思顾言洲)
  • 沈星悦傅时安_沈星悦傅时安
  • 离婚后,居然还能以旧换新?(陈汉李淼淼李思)全书浏览_离婚后,居然还能以旧换新?全书浏览
  • 完结文给女团主播狂刷百万反被骂穷逼,我反手送她队友出道列表_完结文给女团主播狂刷百万反被骂穷逼,我反手送她队友出道(秦薇)
  • 全书浏览老公将我第十个孩子送给情人后,我果断改嫁他绝嗣干爹(苏云遮盛炽)_老公将我第十个孩子送给情人后,我果断改嫁他绝嗣干爹(苏云遮盛炽)全书结局
  • 全文无边怨恨是她活下来的最大动力(江寒静顾榕赫)列表_全文无边怨恨是她活下来的最大动力
  • 全文爸爸死后,消失二十年的妈妈带着儿子回来跟我争家产(顾霆锋顾青卿)列表_全文爸爸死后,消失二十年的妈妈带着儿子回来跟我争家产
  • 霍晚清赵旭然_霍晚清赵旭然
  • 弟弟看的破茧时光沉淀后的深情相拥林悦苏然全书在线

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1