通过Intent获取其他窗口的处理结果
2009-02-23 15:50
148 查看
在实际的应用程序开发中经常需要获得另外一个窗口的操作结果,比如选择的图片的地址,这时可以使用startActivityForResult来完成,方法如下:
以取得从相册中选择的图片Uri为例:
在应用窗口中:
Intent intent = new Intent(Intent.ACTION_PICK, null);//创建新的Intent
// intent.setType("image/*");
intent.setDataAndType(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
MediaStore.Images.Media.CONTENT_TYPE); //设置Intent的数据和类型
try {
startActivityForResult(intent, PHOTO_PICKED_WITH_DATA);//启动相册,并要求返回结果
} catch (ActivityNotFoundException e) {
}
其中PHOTO_PICKED_WITH_DATA是预定义的变量值,用来区别不同的Intent返回的结果:
private static final int PHOTO_PICKED_WITH_DATA = 1001;
下面是获得返回结果的方法:
重载Activity的onActivityResult方法:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode != RESULT_OK) {//如果返回标志不为RESULT_OK则退出,表示用户没有选择就返回了
return;
}
switch (requestCode)//识别码
{
case PHOTO_PICKED_WITH_DATA:
{
Uri uri = data.getData();//从返回的Intent中取得图像的uri
break;
}
...........
}
}
待续。。。。。。。
此文由A9 (www.android9.cn) 提供
以取得从相册中选择的图片Uri为例:
在应用窗口中:
Intent intent = new Intent(Intent.ACTION_PICK, null);//创建新的Intent
// intent.setType("image/*");
intent.setDataAndType(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
MediaStore.Images.Media.CONTENT_TYPE); //设置Intent的数据和类型
try {
startActivityForResult(intent, PHOTO_PICKED_WITH_DATA);//启动相册,并要求返回结果
} catch (ActivityNotFoundException e) {
}
其中PHOTO_PICKED_WITH_DATA是预定义的变量值,用来区别不同的Intent返回的结果:
private static final int PHOTO_PICKED_WITH_DATA = 1001;
下面是获得返回结果的方法:
重载Activity的onActivityResult方法:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode != RESULT_OK) {//如果返回标志不为RESULT_OK则退出,表示用户没有选择就返回了
return;
}
switch (requestCode)//识别码
{
case PHOTO_PICKED_WITH_DATA:
{
Uri uri = data.getData();//从返回的Intent中取得图像的uri
break;
}
...........
}
}
待续。。。。。。。
此文由A9 (www.android9.cn) 提供
相关文章推荐
- 通过FutureTask来实现阻塞当前线程等待其他线程处理的结果
- 黄聪:二、如何通过URL获取其他网页源代码内容(火狐插件扩展开发教程)
- MFC实现 获取其他应用程序窗口信息 .
- 《项目经验》--通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中
- Column注解的的RetentionPolicy的属性值是RUTIME,这样注解处理器可以通过反射,获取到该注解的属性值,从而去做一些运行时的逻辑处理
- 【转载】通过服务端监控结果,说说WCF的并发处理
- 文件上传 通过隐藏iframe的方式来实现ajax上传文件并返回处理结果 ie乱码问题解决
- [WinApi] C#获取其他窗口文本框内容(转)
- 通过系统广播,获得apk的packageName以后,如何仅通过packageName获取其他信息
- PHP中获取我的城市列表,通过排序,通过A-Z的循环!数列出相同的首字母结果!,放到一个以A-Z为key的数组里面去,再返回我要的结果!
- HTML 获取当前标签在页面的位置,并且把其他的浮动窗口显示过来
- 通过JQuery获取窗口和元素的宽高
- 处理拖动的时候,窗口出现重影和其他窗口残余控件的方法
- 【原创】Js:日期处理(日期格式必须【yyyy-mm-dd】才能转成long的毫秒!其他的不是【年-月-日】的格式,结果会是【NaN】)
- 通过api获取句柄控制其他窗体(转)
- 页面前台通过JS访问WEB SERVICES,以及如何处理返回结果.
- 通过api获取句柄控制其他窗体(转)
- 通过CSS的细节处理实现窗口适应
- Delphi通过管道执行外部命令行程序(cmd)并获取返回结果
- ALAssetsLibrary的使用问题:获取到ALAsset的thumbnail或者其他属性保存数组,在别地地方为nil的问题处理