【发布时间】:2013-08-24 18:55:37
【问题描述】:
我有一个带有标签的 ActionBar。
actionBar = getActionBar();
// Hide Actionbar Icon
actionBar.setDisplayShowHomeEnabled(false);
actionBar.setDisplayShowTitleEnabled(true);
// Create Actionbar Tabs
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
// Create first Tab
tab = actionBar.newTab().setTabListener(new BusinessActivity());
// Create your own custom icon
// tab.setIcon(R.drawable.business);
tab.setText("Business");
actionBar.addTab(tab);
我示例中的 BusinessActivity 类是扩展 Fragment。
如何在切换标签时更改 ActionBar 标题?
谢谢。
【问题讨论】:
-
你不应该调用 "new BusinessActivity()" 。您应该创建一个匿名类,或者将其设置为当前实例。
-
谢谢,但如果设置为这个,我将如何设置选项卡以打开新活动?
-
我的意思是它应该在当前上下文中运行。例如,如果此代码驻留在名为“MainActivity”的活动中,则应将参数设置为“MainActivity.this”。在任何情况下,您都不应该创建活动(或服务,或广播接收器,或 ContentProviders 或应用程序)的新实例。它们是由框架自动创建的。
-
但我再次问,当我按下选项卡时如何开始其他活动。我的意思是不仅要更改操作栏的标题,还要开始一个新的活动
-
在您更改标题的同一块中,只需调用 "startActivity(new Intent(...,...))" 。这一切都取决于您在此处发布的代码。因为我不知道周围是什么,我不能告诉你具体写什么。如果这是外部类的一部分,您应该将当前活动作为参数发送,或者改用应用程序上下文。
标签: java android android-actionbar