Android学习笔记:TabHost 和 FragmentTabHost
2019独角兽企业重金招聘Python工程师标准>>>
Android学习笔记:TabHost 和 FragmentTabHostTabHost命名空间:android.widget.TabHost初始化函数(必须在addTab之前调用):setup(); 包含两个子元素:1.Tab标签容器TabWidget(@android:id/tabs)2.Tab内容容器FrameLayout(@android:id/tabcontent)FragmentTabHost命名空间:android.support.v4.app.FragmentTabHostandroid.support.v13.app.FragmentTabHost初始化函数(必须在addTab之前调用):setup(this, getSupportFragmentManager(), R.id.realtabcontent);包含三个子元素:1.Tab标签 容器TabWidget(@android:id/tabs)2.Tab内容 容器FrameLayout [宽高皆为0dp](@android:id/tabcontent)3.Tab内容 容器FrameLayout [真正的容器](@+id/RealTabContent)疑问:为什么同时存在TabContent 和 RealTabContent 两个FrameLayout?答疑:《关于FragmentTabHost中TabWidget不能移到屏幕下面的Bug》http://blog.csdn.net/wklbeta/article/details/11329207资料:《Android开发:使用Fragment改造TabActivity》http://www.blogjava.net/amplifier/archive/2012/12/27/393409.html经验 - 实现Tab功能的几种方式: 1.(废弃)继承自TabActivity + TabHost 布局 + Activity 内容1.1:TabActivity为ActivityGroup[在版本13里被放弃]子类1.2:使用getTabHost() 获得TabHost 对象1.3:使用 newTabSpec(...).setContent(Intent) 添加Tab标签与内容 2.(废弃)继承自ActivityGroup + TabHost布局 + Activity 内容2.1:ActivityGroup在版本13里被放弃2.2:使用findViewById 获得TabHost 对象2.3:使用setup(new LocalActivityManager(this, true))初始化2.4:使用 newTabSpec(...).setContent(Intent) 添加Tab标签与内容 3.(简单)继承自FragmentActivity + FragmentTabHost 布局 + Fragment 内容3.1:使用findViewById 获得FragmentTabHost 对象3.2:使用setup(this, getSupportFragmentManager(), R.id.realtabcontent)初始化3.3:使用addTab(newTabSpec().setIndicator(),Fragment.class, null) 添加Tab标签与内容 4.(复杂)继承自FragmentActivity + TabHost 布局 + ViewPager布局 + Fragment 内容4.1:使用findViewById 获得TabHost 对象4.2:使用setup()初始化4.3:使用TabHost.addTab(tabSpec.setContent(DummyTabFactory));添加Tab标签与空内容4.4:在TabHost.onTabChanged中控制ViewPager的实际显示4.5:滑动时在ViewPager.onPageSelected 中控制Tab标签的选择。 PS:当Tab标签数量固定且不追求和系统保持一致的标签效果,的情况下这里的TabHost布局有些多余。如 :特有应用需要的Tab标签固定,且有自己的一套显示效果,那么这里完全无需TabHost布局。 5.(DIY)继承自FragmentActivity + 自定义布局 + ViewPager布局 + Fragment 内容5.1:自定义布局中嵌入固定Tab标签元素5.2:在标签元素点击事件中控制ViewPager的实际显示5.3:滑动时在ViewPager.onPageSelected 中控制标签元素的选择。
转载于:https://my.oschina.net/u/1424386/blog/341377
Android学习笔记:TabHost 和 FragmentTabHost相关推荐
- Android学习笔记:TabHost 和 FragmentTabHost(转)
Android学习笔记:TabHost 和 FragmentTabHost(转) 转自:http://www.cnblogs.com/asion/p/3339313.html 作者:Asion Tan ...
- Android学习笔记-常用的一些源码,防止忘记了
Android学习笔记-常用的一些源码,防止忘记了... 设置拨打电话 StringdialUri="tell:"+m_currentTelNumble; IntentcallIn ...
- Android学习笔记21:ImageView获取网络图片
Android平台有3种网络接口可以使用,它们分别是:java.net.*(标准java接口).org.apache(Apache接口)和android.net.*(Android网络接口).本文将使 ...
- Android学习笔记(七):多个Activity和Intent
根据www.mars-droid.com:Andriod开发视频教学,先跳过书本<Beginning Android 2>的几个章,我是这两个资源一起看,需要进行一下同步.先初步了解一下应 ...
- Android学习笔记26:图片切换控件ImageSwitcher的使用
在Windows操作系统中,要查看多张图片,可以通过使用"Windows照片查看器"在"上一张"和"下一张"之间切换,进行多张图片的浏览. ...
- Android学习笔记36:使用SQLite方式存储数据
在Android中一共提供了5种数据存储方式,分别为: (1)Files:通过FileInputStream和FileOutputStream对文件进行操作.具体使用方法可以参阅博文<Andro ...
- Pro Android学习笔记(二九):用户界面和控制(17):include和merge
xml控件代码重用:include 如果我们定义一个控件,需要在不同的layout中重复使用,或者在同一个layout中重复使用,可以采用include的方式.例如定义my_button.xml如下 ...
- 【转】 Pro Android学习笔记(二九):用户界面和控制(17):include和merge
目录(?)[-] xml控件代码重用include xml控件代码重用merge 横屏和竖屏landsacpe portrait xml控件代码重用:include 如果我们定义一个控件,需要在不同的 ...
- Pro Android学习笔记(三三):Menu(4):Alternative菜单
什么是Alternative menu(替代菜单) 举个例子,Activity显示一个文本文件.如果用户想对文本文件进行编辑,Activity不提供编辑能力,但可由其他activity或者其他应用提供 ...
最新文章
- 【Python学习笔记】输入raw_input(),特殊情况下也可以用input()
- 程序员经常去的 14 个顶级开发者社区(转)
- Android 使用Vector 画图详解
- django DateField需要前端传递的格式
- 阿里巴巴计算机视觉领域最强阵容集结完毕团体参加CVPR会议
- 安卓系统内 的 安卓虚拟机
- 数据结构:在一个单链表中,若删除p指向节点的后继节点,则执行的操作为:( )
- python与机器视觉(X)打包为exe可执行文件
- 【Flutter】微信项目实战【08】 聊天界面搭建(上)
- H264/AVC-NALU解析
- Currently, defining WATERMARK on a changelog source is not supported
- PHP运行出现502是什么原因,php出现502错误怎么解决
- VHDL实现数码管的动态扫描(可以连接其他的模块)
- gbd调试的基本使用方法
- java推送微信消息换行_微信公众平台开发教程之文本消息如何换行(第十二课)
- html省市多级联动下拉框,基于javascript实现全国省市二级联动下拉选择菜单
- php echarts 嵌套饼图,echarts绘制嵌套环形图/ 双饼图
- 把图片隐藏进音频详细教程(含软件下载及使用方法)
- 【HTML】HTML特殊符号全集
- HTML学习07(实践1):HTML常用标签之标题、段落、换行、空格、列表
热门文章
- 如何利用云服务器挖矿_企业如何选择云服务器
- uva 11269——Setting Problems
- uva 437——The Tower of Babylon
- 网站视频解析 有的url资源放在浏览器能直接播放,有的却不行。
- k8s pod MySQL环境变量_Kubernetes 配置Pod和容器(一)定义容器环境变量
- C++ JSON库:JSON for Morden C++
- Linux下的I/O多路复用select,poll,epoll浅析
- 进入一个目录需要那些权限
- x86异常处理与中断机制(3)中断处理过程
- 21天学通Visual.Basic pdf