Android(Activity)

Android

Activity

基础简述
  • 简介:activity,中文活动,指安卓程序中正在运行的活动,主要用于实现应用的逻辑功能,与用户进行交互。若一个安卓程序没有运行的活动,其用户就看不到这个程序的回馈,这种程序通常是在后台运行,不涉及用户交互的。
  • 基础操作
    为活动绑定自定义的视图:setContentView(R.layout.activity_main)
    括号里的参数是你要绑定的视图文件名
    启动另一个活动:startActivity(intent)
    括号里的参数是要启动的意图
    举个例子:
    Intent intent = new Intent(MainActivity.this,Main2Activity.class);
    //这个意图对象意为从MainActivity跳转到Main2Activity
    结束活动:finish();
    直接结束当前活动
  • 注意:如果是用编译器直接新建Activity的话,编译器会帮你注册好。但如果是自己新建java代码,手撸一个activity,不要忘记去下图目录的AndroidManifest.xml中注册你的activity
    在这里插入图片描述
生命周期
  • onCreate():Activity创建时调用,通常做一些初始化设置
  • onStart():Activity即将可见时调用
  • onResume():Activity获取焦点时调用
  • onPause():当前Activity被其他Activity覆盖或者屏幕锁屏时调用
  • onStop():Activity对用户不可见时调用
  • onDestroy():Activity销毁时调用
  • onRestart():Activity从停止状态到再次启动时调用
数据传递
使用putExtra传递数据
  • 简介:这个方法时Intent对象的一个方法,可以将指定数据封装进Intent对象中,再页面跳转后可以通过Intent对象再来取得这些数据
  • 传进Intent:Intent.putExtra(String name,XXX value)这个方法俩个参数,第一个参数时你要传递的数据名字(字符串),第二个是要传递的数据的值(各种类型都可)
  • 从Intent取得:首先再第二个Activity中使用getIntent()方法取得Intent对象,然后调用其getStringExtra(name)等方法来取得name所对应的参数。具体方法有
getCharExtra();
getFloatExtra();
getFloatArrayExtra();
getIntArrayExtra();
getIntExtra();
getStringArrayExtra();
getStringExtra();
getSerializableExtra();
//这边我省略了参数,因为都是直接传进name就可
使用Bundle传递数据
  • 简介:其实还是离不了Intent,不过是创建了Bundle对象,将其传进Intent,然后将要传的值放在了Bundle对象中
  • 传进Bundle:使用诸如putString(name,value)这样的方法来传进一个参数,然后将Bundle装进Intent,调用方法intent.putExtras(bundle);
  • 取得Bundle中的参数:先取得Bundle对象,Bundle bundle = getIntent().getExtras();
    然后调用其中的诸如getString(name);这样的方法来取得参数
数据回传
  • 简介:活动1跳转到活动2,要求用户在活动2输入一定数据,来支持活动1的一些运作,这时候就需要活动2在关闭后给活动1回传一些参数。
  • 使用startActivityForResult来启动活动2:使用方法startActivityForResult(intent,requestCode)来启动活动2,参数1还是之前方法介绍的意图,参数2是请求码,这个请求码是自己定义的一个整数,用来在获取回传参数时取得自己需要的某个意图回传的参数。
  • 使用setResult设置回传参数:使用方法setResult(resultCode,intent)来在活动2中设置回传的参数,参数1是结果代码,常量RESULT_CANCELED表示用户取消了操作,常量RESULT_OK表示用户正确完成了操作,也可以直接用1和0来代替上面的俩个常量。参数2是封装了数据得Intent对象,封装方法见之前的俩种传法。在活动2中调用这个方法设置回传数据后当活动2结束后参数就会传出去。
  • 重写onActivityResult来处理回传的参数:在活动1中重写onActivityResult(int requestCode,int resultCode,Intent data)方法来处理返回的结果,第一个参数是从所请求的活动返回的请求码,第二个参数是所请求得活动设置得结果代码,第三个参数是取得的Intent对象,从中可以解析出需要的数据内容。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值