0

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

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”。

4

2 回答 2

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);                                                                                                                                                                                                                                              

希望这可以帮助..

于 2013-09-27T13:36:55.647 回答
0

不能使用startActivty方法切换OtherActivity,必须在tabhost中添加FirstActivity和OtherActivity,使用tabhost切换activity。在 FirstActivity 中,你可以发送一个广播然后在 TabActivity 中注册接收者并接收点击动作消息,使用 tabhost 开关。

在 android 新版本中,您可以使用片段而不是 Activity 来显示 mul 选项卡。

于 2013-09-27T13:30:13.493 回答