文章目录
一、前言
- 一、前言
- 二、源码实例
- 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
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?