Pro Android学习笔记(五一):ActionBar(4):标准和Tab模式
2013-11-05 15:26
260 查看
之前,我们学习的Action Bar是标准模式,Tab模式的如下图所示。
对于Tab,我们在Android学习笔记(二二): 多页显示-Tag的使用中学习过,但Action Bar的tab更适合fragment的使用。我们在之前实现的标准Action Bar的基础上添加导航用的tab,代码如下:
public class TabbedActionBarDemo extends SearchTestCase3 implements ActionBar.TabListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
workWithTabbedActionBar();
}
private void workWithTabbedActionBar(){
ActionBar bar = getActionBar();
bar.setTitle("Tabbed action bar"); //可以修改在AndroidManifest.xml中设定的action bar的title
bar.setNavigationMode(ActionBar.N***IGATION_MODE_TABS);
//缺省为ActionBar.N***IGATION_MODE_STANDARD,即标准模式。在标准模式下,是不呈现Tab出来的。
ActionTab.Tab tab1 = bar.newTab();
tab1.setText("Tab1");
tab1.setTabListener(this); //如果我们忘了添加setTabListener(),在运行时会异常,设置null也不行。
bar.addTab(tab1);
bar.addTab(bar.newTab()
.setText("Tab2")
.setTabListener(this));
}
@Override //ActionBar.TabListener接口,在已选择的基础上,再次选择的回调函数
public void onTabReselected(Tab tab, FragmentTransaction ft)
{
showInfo(tab.getText() + " onTabReselected() is called");
}
@Override //ActionBar.TabListener接口,选择tab的回调函数。目前为Tab1,当用户选择tab2时,先触发tab1的onTabUnselected(),再触发tab2的onTableSelected()
public void onTabSelected(Tab tab, FragmentTransaction ft) {
showInfo(tab.getText() + " onTabSelected() is called");
}
@Override //ActionBar.TabListener接口,不再选择(选择其他)的回调函数
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
showInfo(tab.getText() + " onTabUnselected() is called");
}
}
ActionBar.Tab很适合用于fragment,在不同的fragment中切换,此时,具体实现ActionBar.TabListener的可能就是Fragment的继承类。
本博文涉及的例子代码,可以在Pro Android学习:ActionBar小例子中下载。
相关链接:
我的Android开发相关文章
对于Tab,我们在Android学习笔记(二二): 多页显示-Tag的使用中学习过,但Action Bar的tab更适合fragment的使用。我们在之前实现的标准Action Bar的基础上添加导航用的tab,代码如下:
public class TabbedActionBarDemo extends SearchTestCase3 implements ActionBar.TabListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
workWithTabbedActionBar();
}
private void workWithTabbedActionBar(){
ActionBar bar = getActionBar();
bar.setTitle("Tabbed action bar"); //可以修改在AndroidManifest.xml中设定的action bar的title
bar.setNavigationMode(ActionBar.N***IGATION_MODE_TABS);
//缺省为ActionBar.N***IGATION_MODE_STANDARD,即标准模式。在标准模式下,是不呈现Tab出来的。
ActionTab.Tab tab1 = bar.newTab();
tab1.setText("Tab1");
tab1.setTabListener(this); //如果我们忘了添加setTabListener(),在运行时会异常,设置null也不行。
bar.addTab(tab1);
bar.addTab(bar.newTab()
.setText("Tab2")
.setTabListener(this));
}
@Override //ActionBar.TabListener接口,在已选择的基础上,再次选择的回调函数
public void onTabReselected(Tab tab, FragmentTransaction ft)
{
showInfo(tab.getText() + " onTabReselected() is called");
}
@Override //ActionBar.TabListener接口,选择tab的回调函数。目前为Tab1,当用户选择tab2时,先触发tab1的onTabUnselected(),再触发tab2的onTableSelected()
public void onTabSelected(Tab tab, FragmentTransaction ft) {
showInfo(tab.getText() + " onTabSelected() is called");
}
@Override //ActionBar.TabListener接口,不再选择(选择其他)的回调函数
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
showInfo(tab.getText() + " onTabUnselected() is called");
}
}
ActionBar.Tab很适合用于fragment,在不同的fragment中切换,此时,具体实现ActionBar.TabListener的可能就是Fragment的继承类。
本博文涉及的例子代码,可以在Pro Android学习:ActionBar小例子中下载。
相关链接:
我的Android开发相关文章
相关文章推荐
- 【转】 Pro Android学习笔记(五一):ActionBar(4):标准和Tab模式
- Pro Android学习笔记(五二):ActionBar(5):list模式
- ActionBar(4):标准和Tab模式
- 【转】 Pro Android学习笔记(五二):ActionBar(5):list模式
- Pro Android学习笔记(四九):ActionBar(2):Action图标区
- Android学习笔记(三)--ActionBar Tab 的使用。
- Android学习笔记:ActionBar(5):list模式
- Pro Android学习笔记(四八):ActionBar(1):Home图标区
- 【转】 Pro Android学习笔记(四八):ActionBar(1):Home图标区
- Pro Android学习笔记(四八):ActionBar(1):Home图标区
- 【转】 Pro Android学习笔记(四九):ActionBar(2):Action图标区
- Pro Android学习笔记(五十):ActionBar(3):搜索条
- 【转】 Pro Android学习笔记(五十):ActionBar(3):搜索条
- 【Android UI设计与开发】第11期:顶部标题栏(二)ActionBar实现Tab选项卡和下拉导航列表
- Android ActionBar拆分操作栏模式
- ActionBar + Fragment 实现Tab导航Demo
- Android 原生 Android ActionBar Tab (滑动)导航
- Android学习笔记之ActionBar Item用法分析
- Android开发之ViewPager+ActionBar+Fragment实现响应式可滑动Tab
- Android典型界面设计(4)——使用ActionBar+Fragment实现tab切换