举例二,从子Activity获取返回结果 父activity代码 public void startActivityForResult(Intent intent, int requestCode); 参数一同前述的Intent,参数二是请求代码。请求代码是先发送给子activity,然后再返回给 父activity的用户定义整数值。当一个activity启动多个不同类型的子activity,且需要判断区 分消息回馈方时,通常会用到改请求代码。
子activity代码 public final void setResult(int resultCode) public final void setResult(int resultCode, Intent data) 其中的resultcode是结果代码,它指定为RESULT_OK或RESULT_CANCELED,当用户不掉用 setResult()方法是,系统默认发送结果代码”RESULT_CANCELED”,当让,我们要子Activity 返回数据,在此选择第二种方法。
//初始activity处代码 Intent i = new Intent(Context packageContext, nextActivity.class) // startActivity(i); 其他同上,换一种启动方式 startActivityForResult(i, 0); //子activity处代码 Intent result = new Intent(); //新建Intent对象 result.putExtra(String name, data); setResult(RESULT_OK, result); //调用setResult()方法 //父activity读取Extra data = getIntent().getBooleanExtra(name, false);今天断断续续的学习,算是看懂了点Intent的运作。2017/3/12