2011-11-16 12 views
1

2つのタブで2つのListActivityを読み込むTabActivityがあります。 ListActivityのいずれかでリスト項目をクリックすると、この値をTabActivityに戻したいと思います。これを行う最善の方法は何ですか?私はBroadcastReceiverの使用を考えています。何かご意見は?AndroidタブからメインTabActivityに値を渡す最も良い方法

+0

放送受信機は正常に動作します。それは私のためにしました – Javanator

+2

"BroadcastReceiver"は簡単なことですか?いくつかの醜い方法。単にインテントまたはsharedpreferenceを使用してください。 – user370305

答えて

0

をJavanatorに同意します。私はそれをBroadcastReceiverのやり方で行いました。面倒ですが、うまくいきます。

0

インテントを使用して値を渡します。

Bundle b=new Bundle(); 
Intent i=new Intent(this, AnotherActivity.class); 
b.putDouble("data", datavalue);//putting the datavalue 
i.putExtras(b); 

そして

double value = this.getIntent().getDoubleExtra("data", defaultvalue); 

インター変化としてAnotherActivity内の値の両方の活動のためのラインを受け取り、お互いからデータを取得します。

+0

TabActivityをロードすると、両方のアクティビティがロードされます。すでにロードされている場合、インテントをどのように渡すことができますか? – Maurice

+0

それは動作しませんが、試してみることができます。 – Sunny

0

まだタブの操作は推奨されていません。このクラスの代わりにフラグメントを使用してください。これはすべての要件を満たしています。これらの目的でv4サポートライブラリを使用できます。 サンキュー

+0

2.1アップデートを使用しています。 – Maurice

+0

[アンドロイドサポートパッケージ](http://developer.android.com/sdk/compatibility-library.html)でフラグメントを使用することもできます: _サポートパッケージには、Androidアプリケーションに追加できる静的な「サポートライブラリ」が含まれています古いプラットフォームのバージョンでは利用できないAPIを使用するために_ –

2

はこのイラスト

public class MyTabActivity extends TabActivity 
{ 
     public void onCreate(Bundle b) 
     { 
      //implementation 
     } 
     public void setSomeObject(Object someOjbect) 
     { 
       //will get an object and act accordinglt 
     } 
} 

、あなたがこの方法のようにObjectを設定するために使用するActivityあなたの子供のいずれかで考えてみます。

MyTabActivity myTabParent = (MyTabActivity)this.getParent(); 
myTabParent.setSomeObject(anyObject); 
関連する問題