如何将活动称为儿童的活动

时间:2013-09-27 12:06:37

标签: android tabactivity

我使用这样的标签活动制作了一个应用程序:

intent = new Intent().setClass(this, FirstActivity.class);  
spec  = tabHost.newTabSpec("Tab1").setIndicator("Tab1",res.getDrawable(R.drawable.tab1)).setContent(intent); 
tabHost.addTab(spec); 

在FirstActivity.class中有一个带onclick监听器的按钮:

@Override
public void onClick(View v) {

      Intent i = new Intent(FirstActivity.this, OtherActivity.class);
      i.putExtras(bundle);
      startActivity(i);

}

但是当我点击“OtherActivity”隐藏标签时。我正在寻找一种方法来点击按钮,并在TabActivity中打开“OtherActivity”,而不是“FirstActivity”。

2 个答案:

答案 0 :(得分:0)

您无法使用startActivty方法切换OtherActivity,您必须在tabhost中添加FirstActivity和OtherActivity,使用tabhost切换活动。在FirstActivity中,您可以发送广播,然后在TabActivity注册接收器并接收单击操作消息,使用tabhost开关。

在android新版本中,您可以使用片段代替Activity来显示多个标签。

答案 1 :(得分:0)

您需要创建一个中间标签活动,如下面的

public class IntermediateActivity extends TabGroupActivity {

                @Override
                public void onCreate(Bundle savedInstanceState) {
                    // TODO Auto-generated method stub
                    super.onCreate(savedInstanceState);
                    startChildActivity("IntermediateActivity", new Intent(this,OtherActivity.class));
                }

}

在按钮中单击编写以下代码

 Intent i = new Intent(getParent(),IntermediateActivity.class); 
 TabGroupActivity parentActivity = (TabGroupActivity) getParent();
 parentActivity.startChildActivity("move to otheractivity activity", i);                                                                                                                                                                                                                                              

希望这会有所帮助..