Android 如何编程切换选项卡的简单任务

Android 如何编程切换选项卡的简单任务,android,tabs,android-tabhost,switching,Android,Tabs,Android Tabhost,Switching,以下是我的课程概述: 安卓2.2 main活动(tabhost) 4个标签 搜索(使用SearchActivity)(默认) 艺术家(使用艺术家的活动) 相册(使用相册活动) 歌曲(使用SongsActivity) 应用程序最多可加载到默认的搜索选项卡和搜索活动。我可以键入搜索字符串并单击搜索(这将数据存储在全局变量类中)。现在,当我手动单击Artists选项卡时,它将加载ArtistsActivity和相应的视图,并从这个全局变量类中获取数据并执行一些操作 我可以手动单击所有选项卡并在

以下是我的课程概述:

安卓2.2

  • main活动(tabhost)
4个标签

  • 搜索(使用SearchActivity)(默认)
  • 艺术家(使用艺术家的活动)
  • 相册(使用相册活动)
  • 歌曲(使用SongsActivity)
应用程序最多可加载到默认的搜索选项卡和搜索活动。我可以键入搜索字符串并单击搜索(这将数据存储在全局变量类中)。现在,当我手动单击Artists选项卡时,它将加载ArtistsActivity和相应的视图,并从这个全局变量类中获取数据并执行一些操作

我可以手动单击所有选项卡并在选项卡之间切换

但是,如果我使用任何类型的setCurrentTab命令为用户自动切换到下一个选项卡,程序将崩溃,并出现空指针异常

我在网上找到了多种不同的方法,但没有一种有效

这些应用程序完全可以作为用户手动单击选项卡。但我需要编程使这种能力自动发生

需要自动执行的操作示例: 应用程序加载->搜索选项卡->在搜索字符串中键入用户,然后单击搜索按钮->ArtistsTab

这没有任何意义。当我可以作为用户通过单击手动切换到下一个选项卡时,为什么我不能编程自动切换到下一个选项卡?它已经可以正常工作了,我只需要在代码中复制单击这些选项卡的操作,这样用户就不必手动单击下一个选项卡


有人有什么建议吗?

将您的tabhost/tabwidget声明为静态,并从活动中调用setcurrent tab访问该静态tabwidget 前-


发布一些代码,logcatI就把它解决了。谢谢请看下面。我一直在尝试,并收到空指针异常。我确实找到了一个解决方案,我将在下面发布。在选项卡活动中:
TabHost TabHost=(TabHost)getParent().findViewById(android.R.id.TabHost):
tabHost.setCurrentTab(1)修复此问题所需的findViewByID之前出现getParent()。因此,我只需使用第一行在每个选项卡活动中声明一个tabHost,就可以完美地在选项卡之间切换。
TabActivity.tabhost.setcurrentTab(1);