标签在操作栏方便用户去探索,在你的应用程序在不同视图之间切换。ActionBar提供的标签是最理想的选择,因为他们适应不同的屏幕尺寸。一旦你确定了Fragment出现在布局里,添加标签的步骤如下:一:继承ActionBar.TabListener接口,控制哪个标签被选中,进而切换布局;二:对于每一个您想要添加标签,实例化一个ActionBar,选项卡调用setTabListener TabListener(),此外还可设置标签的标题和的setText()(和一个图标setIcon())等等;三:addTab();

MainActivity的源代码如下

package com.example.f19_fragment07;import android.os.Bundle;
import android.app.ActionBar;
import android.app.ActionBar.Tab;
import android.app.ActionBar.TabListener;
import android.app.Activity;
import android.app.FragmentTransaction;public class MainActivity extends Activity implements TabListener {private ActionBar actionBar;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);actionBar = getActionBar();actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);//必须要有这个方法设置其属性actionBar.setDisplayShowTitleEnabled(false);ActionBar.Tab tab = actionBar.newTab().setText("信息管理").setIcon(R.drawable.a).setTabListener(this).setTag("1");ActionBar.Tab tab2 = actionBar.newTab().setText("运动管理").setIcon(R.drawable.a).setTabListener(this).setTag("2");ActionBar.Tab tab3 = actionBar.newTab().setText("系统管理").setIcon(R.drawable.a).setTabListener(this).setTag("3");actionBar.addTab(tab);actionBar.addTab(tab2);actionBar.addTab(tab3);}@Overridepublic void onTabSelected(Tab tab, FragmentTransaction ft) {// TODO Auto-generated method stub//通过标签来做识别,是哪个tab被调用了int flag=Integer.parseInt(tab.getTag().toString());switch (flag) {case 1:AFragment fragment=new AFragment();ft.replace(R.id.main, fragment);// 不用使用commit方法提交,其不能使用回退栈机制返回,这里很容易出错break;case 2:break;case 3:break;}}@Overridepublic void onTabUnselected(Tab tab, FragmentTransaction ft) {// TODO Auto-generated method stub}@Overridepublic void onTabReselected(Tab tab, FragmentTransaction ft) {// TODO Auto-generated method stub}}

Android开发之ActionBar结合Fragment的导航功能的使用(源代码分享)相关推荐

  1. Android开发之Navigationdrawer导航抽屉功能的实现(源代码分享)

    导航抽屉(navigationdrawer)是一个从屏幕左边滑入的面板,用于显示应用的主要导航项目.用户可以通过在屏幕左边缘滑入或者触摸操作栏的应用图标打开导航抽屉.导航抽屉覆盖在内容之上,但不覆盖操 ...

  2. Android开发之LisitView的图文并排效果实现(源代码分享)

    此篇博客通过模拟连接MyEclipse搭建的服务器下载图片,实现在实际开发中的场景运用. MainActivity的代码 package com.example.e13_listview3;impor ...

  3. Android studio实现底部导航,Android 开发之BottomBar+ViewPager+Fragment实现炫酷的底部导航效果...

    BottomBar BottomBar是Github上的一个开源框架,因为从1.3.3开始不支持fragments了,要自己配置,弄了很久,不管是app的fragment还是V4 的程序总是总是闪退. ...

  4. Android开发之ViewPager结合Fragment实现滑动页面的效果(源代码分享)

    前段日子的博客有介绍过关于ViewPager的使用,发现大家对那篇博客都情有独钟,今天我们就在来看一下ViewPager在Fragment中的使用吧,因为ViewPager是在补丁包中添加的低版本的包 ...

  5. android注册弹窗,Android开发之PopupWindow创建弹窗、对话框的方法详解

    本文实例讲述了Android开发之PopupWindow创建弹窗.对话框的方法.分享给大家供大家参考,具体如下: 简介: PopupWindow 可创建类似对话框风格的窗口 效果: 使用方法: 使用P ...

  6. android语音播放工具类,Android开发之MediaPlayer多媒体(音频,视频)播放工具类

    本文实例讲述了Android开发之MediaPlayer多媒体(音频,视频)播放工具类.分享给大家供大家参考,具体如下: package com.android.imooc.chat; import ...

  7. Android开发之ViewPager+ActionBar+Fragment实现响应式可滑动Tab

    今天我们要实现的这个效果呢,在Android的应用中十分地常见,我们可以看到下面两张图,无论是系统内置的联系人应用,还是AnyView的阅读器应用,我们总能找到这样的影子,当我们滑动屏幕时,Tab可以 ...

  8. android md5加密登录,Android开发之MD5加密

    将字符串进行MD5加密,返回加密后的字符串 public static String encode(String password) { try { StringBuffer sb = new Str ...

  9. Android开发之BroadcastReceiver

    Android开发之BroadcastReceiver BroadcastReceiver介绍 广播的种类 标准广播(Normal Broadcast) 有序广播(Ordered Broadcast) ...

最新文章

  1. HTML5 Canvas Text实例1
  2. [python]python字典
  3. 在linux系统下使用C语言操作临时文件
  4. Android 4.4.2 动态添加JNI库方法记录 (二 app应用层)
  5. [CTS2019]氪金手游
  6. factorybean与beanfactory
  7. granule size oracle,_ksmg_granule_size oracle内存分配粒度
  8. opencv基础知识及其一些例子
  9. php列表调多图,列表中调用多图显示的文章
  10. 马云生气了 mysql_“马云生气了”之增删改查
  11. 保持 Go 模块兼容
  12. python怎么关闭csv_Python2.7.1:如何打开、编辑和关闭CSV fi
  13. Eclipse离线安装Svn插件
  14. Amazon IoT Core 服务成本优化
  15. [EE261学习笔记] 4.常用的几个傅里叶变换相关公式
  16. 【笔记】如果使用类的话,需要让类实现Serializable,这个接口是个标记接口,要给序列号,如果想要某个数据不显示的话可以在成员变量前加transient
  17. java汽车租赁系统(java租赁系统java共享汽车java汽车租借系统)java汽车租赁管理系统java自行车租赁系统共
  18. 1167 Cartesian Tree
  19. [LeetCode] 230. Kth Smallest Element in a BST
  20. 百度小程序API提交

热门文章

  1. python与pyqt5_【Python开发】PyQt5应用与实践
  2. php数组转字符串 join,jQuery中将数组转换成字符串join()和push()使用
  3. python html 语法高亮,在Python中使用doxygen样式文档字符串的Vim语法高亮显示
  4. Python知识点2——列表基础
  5. CUDA学习-计算实际线程ID
  6. java实现人字拼,地板怎么玩花式人字拼铺法 人字拼地板家居实例图
  7. rust编程之道 pdf_深挖一篇嵌入式内核论文之后,我发现 Rust 正在悄悄改变世界...
  8. SpringBoot-14-MyBatis预热篇,MySQL小结
  9. Android UI开发神兵利器之Icon
  10. Qt控制中控考勤SDK