0

我正在尝试通过 gps 从另一个活动中获取位置,这与主要活动不同。我需要做另一个活动,一个 JSON 解析器。所以,我想知道是否有办法让每个活动的意图和 onActivityResult 分开。我不知道我解释得好不好。

我需要这样做,因为我对每个新活动都使用 AsyncTask。

感谢您的帮助。

4

2 回答 2

0

使用请求 ID 区分多个活动结果:

startActivityForResult(userLoginIntent, ACTIVITY_1_REQUEST_CODE);

在 onActivityResult :

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);

        switch (requestCode) {
            case ACTIVITY_1_REQUEST_CODE:
            // Process the activity 1 results
            break;
            case ACTIVITY_2_REQUEST_CODE:
            // Process the activity 2 results
            break;
        }
}
于 2013-05-14T10:28:26.733 回答
0

protected void onActivityResult (int requestCode, int resultCode, Intent data)

该方法采用三个参数 -

requestCode - 最初提供给 startActivityForResult() 的整数请求代码,允许您识别此结果来自谁。

resultCode - 子活动通过其 setResult() 返回的整数结果代码。

data - 一个 Intent,它可以将结果数据返回给调用者(可以将各种数据附加到 Intent “extras”)。

您可能喜欢使用一个参数 - requestCode

参考 - onActivityResult

于 2013-05-14T10:32:12.093 回答