我有一个活动名称“Tabs”。它启动了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);
将bundle“gotSettings”从父级传递给子级时没有问题。但是,如何从子活动更新包的值或将值从子项传递给父?
答案 0 :(得分:2)
您有两种方式:
您可以使用StartActivityForResult,这是一个例子:http://www.vogella.com/articles/AndroidIntent/article.html#usingintents_sub
另一种方法是使用静态参数,在子活动中更改它,然后在父活动中使用它。例如:在您的子活动中使用“ChildActivity”类名public static int myValue;
添加此行,然后将参数设置为myValue=25;
并在父活动中使用它:myChildValue=ChildActivity.myValue;