现在的位置: 首页 > 移动开发 > 正文

android app如何检查和管理activity 的结果

2019年09月11日 移动开发 ⁄ 共 1124字 ⁄ 字号 评论关闭
文章目录

于在android 工程中 被调用的activity 传值给调用的activity值的问题
在我的activity ,我在 主 activity 的  startActivityForResult 方法中调用可另外一个activity ,在被调用的activity 中进行了一些动作,但是只会有其中的一个动作返回结果。

例如:我在被调用的activity 中检查手机的一些功能,如果手机有摄像头,我就会关闭这个activity, 检测其他播放工具如果有问题,也关闭这个activity ....

  我希望在管理activity 的时候发送一个结果给主activity ,然后住 activity 根据返回结果做其他处理。
 
  我该如何做呢?

处理方法

在你的第一个 Activity中使用  startActivityForResult() 调用第二个方法。例子

1
2
3
Intent
i =
new

Intent(
this,
SecondActivity.
class);
 
startActivityForResult(i,
1);

In
如果你想在第二个Activity 中给第一个Activity 传值了采用如下的方法:

1
2
3
4
5
6
7
Intent
returnIntent =
new

Intent();
 
returnIntent.putExtra("result",result);
 
setResult(RESULT_OK,returnIntent);
 
finish();

如果不想传值,如下

1
2
3
4
Intent
returnIntent =
new

Intent();
setResult(RESULT_CANCELED,
returnIntent);
 
finish();

在你的第一个Activity 的onActivityResult() 方法中写如下代码

1
2
3
4
5
6
7
8
9
10
11
12
protected

void

onActivityResult(
int

requestCode,
int

resultCode, Intent data) {
 
 
    if

(requestCode ==
1)
{
        if(resultCode
== RESULT_OK){
            String
result=data.getStringExtra(
"result");
        }
        if

(resultCode == RESULT_CANCELED) {
            //Write
your code if there's no result
        }
    }
}//onActivityResult

原文地址:http://www.itmmd.com/201411/121.html 
该文章由 萌萌的IT人 整理发布,转载须标明出处。

抱歉!评论已关闭.