2011-08-14 4 views
1

こんにちは私は2つのタブを持つTabActivityアプリケーションを持っています。 1つのアクティビティは、OnCreate()メソッドのバンドルからデフォルトのpatameterと実行ロジックを取得します。別のアクティビティビューでは、私は他の値で最初のアクティビティにパラメータを送信するいくつかのコントロールを持っています。しかし、最初の活動はタブなしで別々に開きます! OK。また、プログラムで現在のタブを変更することもできますが、この場合はバンドルオブジェクトを取得する方法は? OnStartおよびonResumeコールバックにはBundleオブジェクトがありません。他のタブでアクティビティを実行します。パラメータを渡す

私はコントロールを押した後、このパラメータをプリファレンスに保存してから、他のアクティビティのプリファレンスからこのパラメータを取得することができます。しかし、私はそれが間違った方法だと思う。

答えて

2

あなたはその

Intent theIntent = new Intent(this, TabActivity.class); 
theIntent.putExtra("targetTab", 3); 
startActivity(theIntent); 

のようにもう一度自分自身のタブのアクティビティを呼び出すことができますし、シングルトンJavaクラスを作成し、対象となる活動にデータを渡すことができるデータやパラメータを渡します。

+0

私はスタートアクティビティに何の問題もありません。もう一度タブでアクティビティの開始に問題があります。 startActivity(intent)を呼び出すと、タブなしの新しいウィンドウとしてアクティビティが開きます。私は活動を再開し、別のタブに行く必要があります。 –

+0

あなたはextends TabActivityでアクティビティを呼び出す必要があります。 – cagryInside

+0

MainActivityを開始するとTabActivityが拡張されます。 MainActivityのonNewIntent()メソッドが呼び出されると、すべてのタブが既に存在します。既存のタブでインテントをアクティビティにどのように渡すことができますか?すべてのタブを削除してもう一度再作成しますか?特定のタブを取得してそれに意図を渡すことはできますか?ありがとう。 –

関連する問題