TabHost 命名空间: android.widget.TabHost 初始化函数(必须在addTab之前调用): setup(); 包含两个子元素: 1.Tab标签容器TabWidget(@android:id/tabs) 2.Tab内容容器FrameLayout(@android:id/tabcontent) FragmentTabHost 命名空间: android.support.v4.app.FragmentTabHost android.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》 javascript:void(0) 资料:《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标签与内容 简单)继承自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布局。DIY)继承自FragmentActivity + 自定义布局 + ViewPager布局 + Fragment 内容 5.1:自定义布局中嵌入固定Tab标签元素 5.2:在标签元素点击事件中控制ViewPager的实际显示 5.3:滑动时在ViewPager.onPageSelected 中控制标签元素的选择。
Android学习笔记:TabHost 和 FragmentTabHost
原创
©著作权归作者所有:来自51CTO博客作者mb646713a07a071的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
RHCE 学习笔记之用户和权限管理06
RHCE 学习笔记之用户和权限管理06
字段 用户组 主目录 -
RHCE 学习笔记之文件系统和磁盘管理09
RHCE 学习笔记之文件系统和磁盘管理09
文件系统 ide 2d mount unmount -
HarmonyOS NEXT 学习笔记
鸿蒙os 页面一键置灰
页面效果 API -
Fragment进阶2——使用FragmentTabhost代替Tabhost
Fragment是Android 3.0 引入的新API,他使开发的效率更加高效,因为Tabhost已经不推荐使用了,现在android推荐使用FragmentTabh
android开发 fragment tabhost android xml -
Android之TabHost
为了给新人做关于移动开发的内训,整理了觉得还不错的Demo,给自己做了学习记录,也分享给正在学习的朋友。
Android TabHost TabWidget TabActivity TabContentFactory -
spring boot yml文件配置jvm参数
使用Spring Boot,配置工作将会变得更加简单,我们只需要在application.properties中定义属性,然后在代码中直接使用@Value注入即可。 如下:book.author=xxxbook.name=yyy book.pinyin=测试 这里专门设置了中文,因为中文不做特殊
springboot profile springboot 中文乱码 springboot 日志乱码 springboot+jsp中文乱码 springboot接收中文乱码