我有一个使用TabHost并将不同活动加载到布局的TabContent区域的应用程序。如果我点击一个标签,一个新的意图就会启动,开始活动。所有工作都很好,但我很好奇我如何处理以下事情。基本上,如果我点击联系人的例子,contacts.java类被加载,我的contacts.xml布局文件被用于setContentView。但是,如果我单击我的contacts.xml布局中的一个按钮,比如说“管理联系人”,我需要在同一个tabcontent中加载的意图,而且它似乎只是打开它自己的意图,而不是在tabcontent区域内。有什么我失踪的方式TabHost是为了工作?我应该有一个contacts.java类,只需设置不同的内容视图,而不是真的开始一个新的活动?我有一个标题图像和在我的main.xml布局中定义的选项卡,我的main.java是包含tabhost的活动。我希望我的问题很明确,非常感谢任何帮助!从tabHost的tabContent区域中的活动开始活动
回答
http://www.mkyong.com/android/android-tablayout-example/ 检查此示例,然后为每个父级活动即,如果您有一个选项卡与联系人和配置文件。然后,联系人和个人将是你的父母activity.So延长该父活动的ActivityGroup,使该活动的静态上下文和在活动中使用
Intent intent = new Intent(ctx, c);
View subView = getLocalActivityManager().startActivity(id,
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)).getDecorView();
replaceView(subView);
}
public void replaceView(View subView) {
viewStackList.add(subView);
setContentView(subView);
}
其中c是要切换的类调用的意图to和viewStackList是View类型的ArrayList。这个数组列表被用于维护堆栈以用于返回点击。
正如Eclipse可能告诉你的,TabHost
和所有相关的表格命令/函数都被弃用了。有了这个免责声明,让我告诉你,我仍然在使用它作为我的应用程序!
我的印象是,使用标签是让你可以有一个活动,但多个视图。这并不意味着你必须只有一个.java。
标签之间切换,你应该只需要做tabHost.setCurrentTab(int);
也就是说,假设你建立你的标签了。
是的,我的选项卡工作正常,但是如果我点击我的其中一个选项卡,然后单击tabcontent区域内的某个按钮,启动的活动不会加载到tabcontent区域内,它会在没有选项卡的情况下加载在底部和我在顶部设置的头像。无论如何强制意图在特定tabcontent区域打开? – Phil 2013-05-07 18:55:02
这听起来像你试图这样做也许:http://stackoverflow.com/questions/1306689/launching-activities-within-a-tab-in-android 如果是这样,很好,因为有一个解决方案或两个可能适合你!你应该能够指定一个窗口来运行活动。 – 2013-05-07 19:15:45
- 1. 如何从singleInstance活动开始活动?
- 2. 从非活动开始活动
- 3. 带活动的TabHost
- 4. li中的活动区域
- 5. 在tabhost android中的活动?
- 6. 如何从tabview中的列表活动开始新的活动
- 7. 从c2dm中的非活动开始活动没有显示
- 8. 从android中的活动X开始活动X
- 9. Android:从MenuItem开始活动
- 10. 从packageinfo开始活动
- 11. 从活动开始BroadCastReceiver
- 12. 从HTML开始活动
- 13. 从活动开始服务
- 14. 从活动开始服务
- 15. 从TimerTask类开始活动
- 16. 从活动开始片段
- 17. 从片段开始活动
- 18. 开始从Asynctask活动
- 19. iPhone - UITabBar的活动区域
- 20. Android:从TabHost开始一项新活动会禁用onClick
- 21. 从Android中的列表开始活动
- 22. 如何从集成的google api开始新的活动活动
- 23. 如何从孩子的活动转向家庭活动tabhost
- 24. android-导航到在tabhost中的活动组中的子活动
- 25. android tabhost同样的活动
- 26. 开始活动,不完成活动
- 27. 活动已移至开始活动
- 28. 从含有意图的活动开始片段活动
- 29. 如何从我的活动开始日历活动
- 30. Android - 从子活动onResume()开始一个完成的父活动()
感谢newBie,你的代码基本上是我解决我的问题的方法! – Phil 2013-05-10 18:52:35