文章目录
一、前言
- 一、前言
- 二、源码实例
- 1.选项卡所在的布局文件 `fragment_course_selection.xml`
- 2.选项卡所在类 `CourseSelectionFragment.java`
- 3.选项卡适配器 `SelectCourseAdapter`
- 4.自定义选项卡字体样式 View 布局 `tablayout_item.xml`
- 5.ViewPager 内容类 `PrimaryFragment1`
- 6.ViewPager 内容类 `PrimaryFragment2`
- 7.最终效果图如下:
今天在写 Android 程序的时候使用到了控件 TabLayout ,并想实现以下选项卡的效果。
通过百度搜索了很多篇博主的文章,也受益匪浅,但是总是有一些缺陷,在这里我来给大家整理一个完整的例子,供大家学习使用,如有不足,愿指出。 先附上我参考博主的链接:https://blog.csdn.net/lilihong0/article/details/80927136?utm_source=blogxgwz30
二、源码实例 1.选项卡所在的布局文件fragment_course_selection.xml
2.选项卡所在类 CourseSelectionFragment.java
public class CourseSelectionFragment extends Fragment {
private View view;
List fragments = new ArrayList();
private TabLayout course_tab;
private ViewPager course_viewpager;
String tabText[] = new String[2];
@Nullable
public View onCreateView(@NonNull LayoutInflater inflater,
@Nullable ViewGroup container,
@Nullable Bundle savedInstanceState) {
view = inflater.inflate(R.layout.fragment_course_selection,container,false);
initView();
initData();
initEvent();
return view;
}
public void initView() {
course_tab = view.findViewById(R.id.course_tab);
course_viewpager = view.findViewById(R.id.course_viewpager);
}
public void initData() {
// 添加选项卡
FragmentPagerAdapter adapter;
fragments.add(new PrimaryFragment1());
fragments.add(new PrimaryFragment2());
// 设置选项卡文字
tabText[0] = "小学";
tabText[1] = "初中";
// 设置适配器
adapter = new SelectCourseAdapter(getChildFragmentManager(),fragments, tabText);
course_viewpager.setAdapter(adapter);
course_tab.setupWithViewPager(course_viewpager);
// 给选项卡添加自定义 View
for (int i = 0; i
关注
打赏
热门博文
- Android --- 异步任务机制之AsyncTask
- Android --- java.lang.SecurityException: Permission Denial: reading androidx.core.content.FileProvi
- Android --- AS启动报错,点什么都点不了com.intellij.ide.plugins.PluginManager(ubuntu)
- Android --- 浅谈下 ImageView 的 setImageLevel 方法走过的坑
- 【数据库系统】- 分布式数据库 - 分片透明、复制透明、位置透明、逻辑透明
- 【数据库原理】闭包与候选码的求法,你掌握技巧了吗?
- UML类图与类的关系详解
- Android --- 文件的创建、写入、读取、压缩操作示例代码
- Android --- 强引用、软引用、弱引用和虚引用
- Android --- Handler 内存泄漏原因及解决方案