2012-05-12 10 views
1

私は厄介な問題にぶつかっています。私は2つのタブホスト ... タブホストAタブホストBを持っています。各タブホストには3つのタブがあります(A1、B1、A2、B2などと呼びましょう)。 タブホストBはアクティビティA2から起動します。とにかく、ここに私の問題があります:タブホストから戻るボタンを押したときにOnResumeが呼び出されない

私はタブホストBのタブの1つで、組み込みの戻るボタンを使用してアクティビティA2に戻ると、onResumeは呼び出されません。なぜこれが当てはまるのか理解できません...アクティビティのライフサイクルに関する記事を読んだところ、TabホストBがそのアクティビティA2のonStopメソッドを呼び出すとすぐに呼び出されるはずでした。 A2のonStartメソッドとonResumeメソッドが呼び出されているはずの、戻るボタンを使ってそのページに戻ります。私が考えることができるのは、Tab Host AのonResumeがActivty A2の代わりに呼び出されているということだけです。どんな助けでも大歓迎です!ここで

私はタブのホストAからA2のキックするために使用していたコードです:

intent = new Intent().setClass(this, FiltersActivity.class); 
spec = tabHost.newTabSpec("filters").setIndicator("Filters", 
     res.getDrawable(R.drawable.ic_tab_filters)).setContent(intent); 
tabHost.addTab(spec); 
+0

あなたが別の活動からナビゲートするためのコードを貼り付けてくださいそれはあなたが – Trikaldarshi

+0

タブホストBを起動する活動A2からコードを意味していますがstartActivityforresultのですか?それとも他のことを言いたいのですか? Btw非常に迅速な返信ありがとう:) – Tim

+0

あなたはあなたが活動A2に行くと書いた活動を開始するためにいくつかの意図を使用する必要があります私はそのコードを望んでいた – Trikaldarshi

答えて

0

答えinherit's開発page'sコメント

// Create an Intent to launch an Activity for the tab (to be reused) 
    intent = new Intent().setClass(this, ArtistsActivity.class); 

をアクティビティがに包まれてあなたのタブの仕様とそのライフサイクルは今仕様に関連しています。

あなたがしたいことは、タブに切り替えて電話をかけるときにあなた自身の方法を提供することです。

getTabHost().setCurrentTab(resumeTab); 
Activity filtersActivity = this.getCurrentActivity(); 
filtersActivity.yourMethod(); 
+0

'getCurrentActivity()'メソッドが存在しないようです –

関連する問題