簡體   English   中英

從Android中的ListView的setOnItemClickListener調用startActivityForResult

[英]Calling startActivityForResult from the setOnItemClickListener of a ListView in Android

我正在活動A中創建一個意圖,然后使用Android中ListView的setOnItemClickListener的startActivityForResult啟動活動B。

Intent detailsIntent = new Intent(MyTeamDetailsActivity.this, MatchMediaActivity.class);
                                        detailsIntent.putExtra("data", data);
                                        detailsIntent.putExtra("hasSmoovz",mSmoovz);
                                        detailsIntent.putExtra("uitslagen", true);
                                        startActivityForResult(detailsIntent, MATCH_MEDIA_REQUEST);

問題在於,啟動活動時,它立即進入活動A的onActivityResult部分,但resultCode = 0; 然后,執行此操作后,它將加載活動B的onCreate等。

以下代碼是我的onActivityResult:

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (requestCode == MATCH_MEDIA_REQUEST) {
            if (resultCode == RESULT_OK) {
                refreshData();
            }
        }
    }

這是完成活動B並為其提供結果代碼的簡單代碼:

@Override
    public void onBackPressed() {
        setResult(RESULT_OK);
        finish();
    }

知道為什么會這樣嗎? 我以前從未見過。 非常感謝。

這是因為我的清單中的活動為singleTask: https : //developer.android.com/guide/topics/manifest/activity-element.html#lmode

(感謝@SteveBarret)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM