0

我有一个扩展 SherlockListActivity 的类 DashBoardTasks,它具有以下代码:

public class DashBoardTasks extends SherlockListActivity
{
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.my_listview);

  ActionBar a = DashBoardTasks.this.getSupportActionBar();
    a.hide();
  (...)
}

发生的事情是我的 SherlockActionBar 消失了。到目前为止,一切都很好。

现在我有这个类 TabHostTasks:

public class TabHostTasks extends tabActivity

当我在 TabHostTasks 中调用 DashBoardTasks 时,会发生 a = null 并且应用程序崩溃!!!!为什么?为什么它在选项卡外工作但在选项卡内崩溃?我只是隐藏操作栏。

谢谢。

4

1 回答 1

0

我怀疑TabActivity在其内容区域内显示活动时,这些活动没有像ActionBar. 您的DashBoardTasks活动没有ActionBar; TabHostTasks做。

写一个方法TabHostTasks来操作你的ActionBar. 您可以调用getParent()fromDashBoardTasks并将其转换为TabHostTasks,然后调用您的方法来隐藏栏。

您也可以考虑尝试使用选项卡来实现您的应用程序ActionBar。(TabActivity已弃用)

于 2012-08-14T17:41:19.133 回答