0

私の TabActivity では、他のアクティビティに値を送信しています

このTabActivityで、バンドルを他のアクティビティに送信する方法を教えてください他のReceivedListアクティビティに値を渡す方法を教えてください....

    public class TabViewForSendAndRecv extends TabActivity{

private TabActivity tabhost1;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.tabviewforsendandrecv);


    Bundle bundle = getIntent().getExtras();
    String stuff = bundle.getString("number"); 



         final TabHost tabHost = getTabHost(); 



      TextView txtTab = new TextView(this);
        txtTab.setText("Received Alerts");
        txtTab.setPadding(8, 9, 8, 9);
        txtTab.setTextColor(Color.WHITE);
        txtTab.setTextSize(14);
        //txtTab.setTypeface(localTypeface1);
        txtTab.setGravity(Gravity.CENTER_HORIZONTAL |                                            Gravity.CENTER_VERTICAL);


        TabHost.TabSpec spec;

        // Initialize a TabSpec for each tab and add it to the TabHost
        spec = tabHost.newTabSpec("Tab1").setIndicator(txtTab).
        setContent(new Intent(this, ReceivedList.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));


        tabHost.addTab(spec);




      //tab 2


        TextView txtTab1 = new TextView(this);
        txtTab1.setText("Sent Alerts");
        txtTab1.setPadding(8, 9, 8, 9);
        txtTab1.setTextColor(Color.WHITE);
        txtTab1.setTextSize(14);
        //txtTab.setTypeface(localTypeface1);
        txtTab1.setGravity(Gravity.CENTER_HORIZONTAL | Gravity.CENTER_VERTICAL);


        TabHost.TabSpec spec1;
        // Initialize a TabSpec for each tab and add it to the TabHost
        spec1 = tabHost.newTabSpec("Tab2").setIndicator(txtTab1).setContent(new Intent(this, SentList.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));



        tabHost.addTab(spec1);
4

1 に答える 1

2

このデータは次のように渡すことができます。

この行を編集します。

setContent(new Intent(this, ReceivedList.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP))

に:

Intent receivedListIntent = new Intent(this,ReceivedList.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

receivedListIntent.putExtra("number", stuff);

setContent(receivedListIntent);

そして、ReceivedList アクティビティでこのデータを取得できます。

Bundle bundle = getIntent().getExtras();
String stuff = bundle.getString("number");

複数のアクティビティ間でデータを交換する方法はまだあります。これを行うには、クラス アプリケーション クラスを作成する必要があります。そして、データにパブリック フィールドを作成します。そして、すべてのアクティビティでこのフィールドを設定または取得できます。

于 2013-06-27T03:57:15.507 に答える