2012-07-31 18 views
2

我知道有大量相同的問題,但仍然沒有調用OnActivityResult。onActivityResult從來沒有在TabActivity中調用過

這是我的代碼

活動答:

 Intent i = new Intent(); 
     Bundle b = new Bundle(); 
     b.putString(ActivityB.LINK, ad.getLink()); 
     i.putExtras(b); 
     i.setClass(this, ActivityB.class); 
     startActivityForResult(i, 0); 

@Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) 
    { 
     /*handling of result...*/ 
     super.onActivityResult(requestCode, resultCode, data); 
    } 

活動B:

@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.ad_video); 
    Bundle b = this.getIntent().getExtras(); 
    setResult(0); 
    link = b.getString(LINK); 
    videoView = (VideoView) findViewById(R.id.surface_view); 
    videoView.setVideoPath(_link); 
    videoView.requestFocus(); 
    videoView.start(); 
    videoView.setOnCompletionListener(new OnCompletionListener() { 
     public void onCompletion(MediaPlayer mp) 
     { 
      setResult(0); 
      ActivityB.this.finish(); 
     } 
    }); 
} 

無論我做什麼,OnActivityResult不會被調用。 基於

  1. 我把帶的setResult值> 0(0,99)

  2. 在Android清單

    沒有launchMode其他問題(我也試圖把 launchMode標準)

感謝您的幫助

+0

你確定你沒有輸入onActivityResult? 也儘量不要使用0,應該不是真的是一個問題,但我總是避免在我的代碼。 (作爲結果/請求代碼) – 2012-07-31 11:48:37

+0

是的我敢肯定,我也試過setResult(99)同樣的問題,我的活動是tabActivity的活動,如果這可能會導致問題 – 2012-07-31 11:53:28

+0

重要的是,如果不完成活動if你在選項卡AFAIK之間切換。 – 2012-07-31 12:02:17

回答

0

好吧,我知道了, 的主要問題是,我叫activtiy從接頭主機內。我從包含選項卡(擴展TabActivity的選項卡)的Activity中調用它,並且它可以工作。

所以簡而言之,即使我將每個選項卡用作活動,
應該調用startActivityForResult的一項是擴展TabActivity的主要活動。

謝謝大家的幫助

1

嘗試增加的意圖,結果,此代碼的工作對我來說:

Intent in = new Intent(); 
setResult(101, in); 
finish(); 
+0

:S不行,我試了一下,和同樣的問題。 – 2012-07-31 12:06:47

0

試試下面的代碼

Intent returnIntent = new Intent(); 
returnIntent.putExtra("ProfilePicPath", path); 
setResult(RESULT_OK, returnIntent); 
finish(); 
+0

試過了,並沒有爲我工作 – 2012-07-31 12:10:55

0

在孩子的活動,我用它的子活動

getParent().startActivityForResult(intent, positive_request_code); 
相關問題