Android学习-调用onActivityResult()接收返回来的信息

  1、在调用另外一个activity时是为了得到返回来的值时,若选择通讯录时候进入通讯录只是返回一个电话号码等等,我们可以调用startActivityForResult();

   

     Intent intent=new Intent();
	intent.setAction("com.example.multiactivity.SecondActivity3");
	intent.addCategory("android.intent.category.DEFAULT");

	Bundle b=new Bundle();
	b.putString("name1", "zp");
	b.putString("name2", "db");
	intent.putExtras(b);
	startActivityForResult(intent, 0);//0参数是请求码,一般设为0,在调用多个activity时候请求码用来标识是哪个请求返回的数据。

  2、通常是在点击事件,如listview的item中点击选择了联系人,就返回联系人,即在被调用的activity里将数据存入intent,并调用finnish返回数据

         Intent in=new Intent();
		in.putExtra("name3", "cy");
		setResult(0, in);  //此处的0是结果码,用户可以给结果码设定特殊的含义例如此处若是联网操作,可以定义结果码为200时候是返回连接成功,出现异常时候返回403 连接错误
		finish();

  3、在返回的activity里要覆写onActivityResult(int requestCode, int resultCode, Intent data)方法,

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
	// TODO Auto-generated method stub

	super.onActivityResult(requestCode, resultCode, data);
	System.out.println("请求码:"+requestCode);
	System.out.println("结果码:"+resultCode); //结果码为返回时候设置的
	if(requestCode==0)//所有的返回数据的操作都是调用该函数完成,当多次调用activity返回的值时候,根据startActivityForResult时候设置的请求码来处理
	{
	String st="1";
	if(data!=null)
	st=data.getStringExtra("name3");
	ed.setText(st);
	}
}

  

例如下图的操作,点击“选择第一个联系人”时将requestcode设为0,在点击“选择第二个联系人”请求码设为1,在onActivityResult(int requestCode, int resultCode, Intent data)方法里根据返回的requestCode来采取相应的操作,将相对应Edittext里的数据设为电话号码。

时间: 2024-10-09 14:51:12

Android学习-调用onActivityResult()接收返回来的信息的相关文章

android onActivityResult()接收返回数据为null的解决方案

对于·app多个界面管理,如果一般使用Activity默认的加载模式,按返回键就会退回上一次操作,就是一种新建一个Activity实例.时间长了就会变得卡顿,一般人会选择手动地在代码中屏蔽返回键,使用app中开发的返回键,这样也可以解决问题. 但是本质问题还是没解决,不可能以后开发也用这样的方法,用多了也烦躁.所以解决这个问题的关键在于了解Activity的加载模式. 第一中加载模式是:standard标准模式,系统默认的加载的模式 android:launchMode="standard&qu

android中调用相机拍照返回null的问题的终极解决办法

private ArrayList<String> mImageList; private static final int REQUEST_CAMERA = 5; // 相机拍照标记 private static final int CAMERA_REQUEST_CODE = 1; /** * 拍照获取照片 */ protected void selectPicFromCamera() { if (!SDCardUtils.isSDCardEnable()){ //不存在sd卡 Toast.

Android学习笔记(十一)——从意图返回结果

从意图返回结果 startActivity()方法调用另一个活动,但并没有返回结果给当前活动.此时如想从一个活动中回传数据,就要使用startActivityForResult()方法. 点此获取完整代码~                                                                  1.使用上一篇中创建的项目,在secondactivity.xml文件中添加文本框和按钮,代码如下: <TextView android:layout_width

Android 学习笔记之WebService实现远程调用+内部原理分析...

PS:终于可以抽出时间写写博客了,忙着学校的三周破实训外加替考...三周了,没怎么学习...哎... 学习内容: 1.WebService 实现远程方法的调用   什么是WebService...   WebService顾名思义,就是Web服务,WebService的数据传输格式是基于XML文档规范的,数据信息的传输就是以XML的形式来完成...由于XML不受平台和语言的限制,也正是由于这样的原因使得WebService可以实现远程调用,调用服务的语言可以是任意的.   什么是SOAP协议..

Android学习Scroller(五)——详解Scroller调用过程以及View的重绘

MainActivity如下: package cc.ww; import android.os.Bundle; import android.widget.ImageView; import android.widget.ImageView.ScaleType; import android.widget.RelativeLayout; import android.widget.RelativeLayout.LayoutParams; import android.app.Activity;

android调试bug集锦 onActivityResult立即返回,并且被CANCEL

症状: 在使用startActivityForResult调用照相机或者选择图片的时候,总是onActivityResult立马返回,resultCode=0 CANCEL. startActivityForResult(intent,IMAGE_PICK_REQUEST); 因为是在fragment里面使用startActivityForResult有问题,所以开始以为是因为fragment导致的问题,各种调试都无法解决问题. 解决方法: 后来突然看到manifests里面看到activity

【转】 Pro Android学习笔记(七一):HTTP服务(5):多线程调用HttpClient

目录(?)[-] 应用共享HttpClient对象的同步问题 创建共享HttpClient代码 创建共享对象 创建可共享的HttpClient对象 使用共享HttpClient对象的代码 基础代码 修改HTTP连接的参数 使用共同的Appcliation对象 文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件,转载须注明出处:http://blog.csdn.net/flowingflying/ 应用共享HttpClient对象的同步问题 在之前的例子中,HttpClient只

android学习十四(android的接收短信)

收发短信是每个手机基本的操作,android手机当然也可以接收短信了.android系统提供了一系列的API,使得我们可以在自己的应用程序里接收和发送短信. 其实接收短信主要是利用我们前面学过的广播机制.当手机接收到一条短信的时候,系统会发出一条值为andorid.provider.Telephony.SMS_RECEIVED的广播,这条广播里携带着与短信相关的所有数据.每个应用程序都可以在广播接收器里对它进行监听,收到广播时在从中解析出短信的内容即可. 下面我们来个具体的例子实践下吧,新建一个

Android学习小Demo(19)利用Loader来实时接收短信

之前写过一篇文章<Android学习小Demo(13)Android中关于ContentObserver的使用>,在里面利用ContentOberver去监测短信URI内容的变化.我们先来回顾一下,是如何利用ContentOberver来监测短信内容的变化的. 1)要自定义一个类,比如SmsContentObserver,继承ContentObserver,并且实现其onChange方法. 2)在onChange方法中去查询对应Uri,比如短信收件箱的内容,并将对应的记录利用Handler发送