android intent 的数据传递两种


  1. 在activity启动时能被人看见时就是启动完了onCreate(),onStart().onResume(),进入中间绿色的Activity running 中间了,点击返回键,就onPause(),onStop(),onDestroy().死亡了
  2.  onCreate() 创建完毕
  3. onStart() 已经显示在屏幕,但没有焦点。
  4. onResume()得到得到显示,可以控制
  5. onPause()被挡住了 界面,
  6. onStop()界面被关闭了,但是在后台还在偷偷运行
  7. stop()后重新回到应用,就调用了onRestart()方法
  8. Pause()后重新回到应用,会调用onResume()方法就可以;
  9. onDestroy()被彻底清除了。

  1. onCreate()来做 Activity创建时需要初始化资源,销毁时需要释放资源;或者播放器应用,在界面进入后台时需要自动暂停
  2. onPause()和onStop()里可以写一些视频,切回桌面时暂停视频,界面不可见,切回来还可以继续播放。
App process killed 用于杀死应用进程的。 内存不足的时候会自动杀死最近打开的进程,保留新的,会杀死onStop
里面的,onStop里面要是没有了,就会杀死onPause暂停里的,一般不杀死前台的,
intent 传递数据:
用intent .putExtra适合传递少量数据,写起来比较方便;
用bundle方法,用于数据种类比较多的话,可以对种类做一个划分,把不同种类数据封装到一个budle对象里。


代码:主界面:第一个MainActivity
Intent intent =new Intent(MainActivity.this,SecondActivity.class);
intent.putString("大雨","lyz");
intent.putString("芙蓉姐姐","qwwq");
startActivity(intent);
第二个界面SecondActivity

private int nextInt;
Intent intent =getIntent();
String boyExtra=intent.getStringExtra("大雨");
String girlExtra=intent.getStringExtra("芙蓉姐姐");
Random mrRandom=new Random();
if("lyz".equals(boyExtra)&&"qwwq".equals(girlExtra)){
nextInt=99;
}else{
nextInt=mrRandom.nextInt(100);
}
Text mtv=(TextView)findViewById(R.id.tv_receive);
mtv.setText(boyExtra+"和"+girlExtra+"的姻缘值"+nextInt);

Bundle:
Bundle bd=new Bundle();
bd.putString("大雨", "lyz");
bd.putString("芙蓉姐姐", "qwwq");
intent.putExtras(bd);
startActivity(intent);
第二个界面
Intent intent = getIntent();
Bundle extras=intent.getExtras();//**********
String boyExtra = extras.getString("大雨");
String girlExtra = extras.getString("芙蓉姐姐");
Random mrRandom=new Random();
nextInt = mrRandom.nextInt(100);
TextView  mtv = (TextView) findViewById(R.id.tv_receive);
mtv.setText(boyExtra+"和"+girlExtra+"的姻缘值"+nextInt);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值