fragmenttabhost

[Android] Android 使用 FragmentTabHost + Fragment 实现 微信 底部菜单

家住魔仙堡 提交于 2020-03-09 06:10:27
Android 使用 FragmentTabHost + Fragment 实现 微信 底部菜单 利用FragmentTabHost实现底部菜单,在该底部菜单中,包括了4个TabSpec,每个TabSpec中包含了一个View,而View中包含了一个ImageView和一个TextView。 一、先演示下效果: 二、TabHost基本介绍 TabWidget : 该组件就是TabHost标签页中上部 或者 下部的按钮, 可以点击按钮切换选项卡; TabSpec : 代表了选项卡界面, 添加一个TabSpec即可添加到TabHost中; -- 创建选项卡 : newTabSpec(String tag), 创建一个选项卡; -- 添加选项卡 : addTab(tabSpec); 三、使用步骤 1、定义布局 : 在XML文件中 使用 FragmentTabHost 组件 , 并在其中 定义一个FrameLayout选项卡 内容; <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width=

使用FragmentTabHost+TabLayout+ViewPager实现双层嵌套Tab

て烟熏妆下的殇ゞ 提交于 2020-02-03 19:37:01
版权声明:本文为 HaiyuKing 原创文章,转载请注明出处! 前言 使用FragmentTabHost实现底部选项卡效果。 备注:该Demo主要是演示FragmentTabHost的一些设置和部分功能,实际中需要参考其他Demo。 效果图 代码分析 1、该Demo中采用的是FragmentTabHost的布局方案之一 【命名为非常规布局写法】;【 建议使用常规布局写法 ,见《 FragmentTabHostTopDemo【FragmentTabHost固定宽度且居中】 》】 2、未使用自定义的FragmentTabHost; 【建议使用自定义的FragmentTabHost,见《FragmentTabHostUnderLineDemo【 FragmentTabHost带下划线 】》】 原因是FragmentTabHost切换时执行的是attach/detach,而不是show/hide。而atach触发的执行顺序:attach()->onCreateView()->onActivityCreated()->onStart()->onResume() 使用hide()方法只是隐藏了fragment的view并没有将view从viewtree中删除,随后可用show()方法将view设置为显示。 3、ContactFragment演示的是:使用FragmentTabHost时