1

アクティビティ名は「タブ」です。それぞれ独自のアクティビティを持つ4つの異なるタブを起動します。それは使用しています :

th = (TabHost) findViewById(R.id.tabhost);
    th.setup(this.getLocalActivityManager());
    TabSpec specs = th.newTabSpec("Tag1");
    Intent tabSelection = new Intent (this, ProfileSettings.class);

    tabSelection.putExtras(gotSettings);
    specs.setContent(tabSelection);
    specs.setIndicator("Settings",
            getResources().getDrawable(R.drawable.ic_menu_friendslist));
    th.addTab(specs);

    specs = th.newTabSpec("Tag2");
    tabSelection = new Intent (this,InternationalRoamingService.class);
    specs.setContent(tabSelection);
    specs.setIndicator("IRS", getResources().getDrawable(R.drawable.ic_menu_mapmode));
    th.addTab(specs);

    specs = th.newTabSpec("Tag3");
    tabSelection = new Intent (this,Call.class);
    specs.setContent(tabSelection);
    specs.setIndicator("Call", getResources().getDrawable(R.drawable.call));
    th.addTab(specs);

    specs = th.newTabSpec("Tag4");
    tabSelection = new Intent (this,WebSMS.class);
    specs.setContent(tabSelection);
    specs.setIndicator("SMS", getResources().getDrawable(R.drawable.ic_menu_start_conversation));
    th.addTab(specs);

親から子にバンドル「gotSettings」を渡すことに問題はありません。しかし、子アクティビティからバンドルの値を更新したり、子から親に値を渡したりするにはどうすればよいですか?

4

1 に答える 1

2

あなたには2つの方法があります:

  • StartActivityForResultを使用できます。これはその例です:http ://www.vogella.com/articles/AndroidIntent/article.html#usingintents_sub

  • もう1つの方法は、静的パラメーターを使用することです。これを子アクティビティで変更してから、親アクティビティで使用します。例:「ChildActivity」クラス名を使用して子アクティビティにこの行を追加し、それにpublic static int myValue;パラメータを設定してmyValue=25;、親アクティビティで使用します。myChildValue=ChildActivity.myValue;

于 2012-07-08T03:51:48.180 に答える