安卓界面之Viewpager和Tablayout实现滑动界面
摘要:六部实现选项卡界面
一.
在gradle文件添加以下代码:
implementation 'com.android.support:design:28.0.0'
在gradle文件添加以上代码后,才能使用Tablayout(版本号28.0.0是我做实验时最新的版本)
二.布局代码
<android.support.design.widget.TabLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"app:tabMaxWidth="0dp"app:tabGravity="fill"app:tabMode="fixed"android:id="@+id/tablayout_id"android:textAlignment="center"app:tabSelectedTextColor="@color/tabindicatorcolor"app:tabTextColor="@color/tabtextcolor"app:tabIndicatorColor="@color/tabindicatorcolor"android:background="@color/colorPrimary"/><android.support.v4.view.ViewPagerandroid:layout_width="match_parent"android:layout_height="match_parent"android:id="@+id/viewpager_id"></android.support.v4.view.ViewPager>
三.在res/layout目录下自定义xml文件作为fragment中的选项界面
action_fragment.xml和mark_fragment.xml分别为"行动","统计"选项卡界面
四.新建多个继承Fragment的子类返回选项界面
FragmentAction.java
public class FramentAction extends Fragment {public FramentAction() {}@Nullable@Overridepublic View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {View view=inflater.inflate(R.layout.action_fragment,container,false);return view;} }
FragmentMark.java
public class FragmentMark extends Fragment {public FragmentMark() {}@Nullable@Overridepublic View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {View view=inflater.inflate(R.layout.mark_fragment,container,false);return view;}}
五.自定义继承FragmentPagerAdapter的子类ViewPagerAdater,重写getItem(),getCount(),getPageTitle()方法,添加AddFragment()方法
public class ViewPagerAdaper extends FragmentPagerAdapter {private final List<Fragment> fragmentList=new ArrayList<>();private final List<String> fragementListTitle=new ArrayList<>();public ViewPagerAdaper(FragmentManager fm) {super(fm);}@Overridepublic Fragment getItem(int i) {return fragmentList.get(i);}@Overridepublic int getCount() {return fragementListTitle.size();}@Nullable@Overridepublic CharSequence getPageTitle(int position) {return fragementListTitle.get(position);}public void AddFragemnt(Fragment fragment,String title){fragmentList.add(fragment);fragementListTitle.add(title);} }
六.在MainActivity.java中实现以下代码:
tabLayout=findViewById(R.id.tablayout_id);viewPager=findViewById(R.id.viewpager_id);ViewPagerAdaper mAdaper=new ViewPagerAdaper(getSupportFragmentManager());mAdaper.AddFragemnt(new FramentAction(),"行动");mAdaper.AddFragemnt(new FragmentMark(),"统计");viewPager.setAdapter(mAdaper);tabLayout.setupWithViewPager(viewPager);
转载于:https://www.cnblogs.com/adressian/p/10224342.html
安卓界面之Viewpager和Tablayout实现滑动界面相关推荐
- 安卓界面之Toolbar上手
一.在配置文件采用自定义Style方法去除Actionbar <resources><style name="MyTheme" parent="Them ...
- TabLayout+ViewPager实现选项卡动态滑动效果
1. 前提准备 今天回顾了下TabLayout与ViewPager的联合使用,顺便写个demo来加深下理解.首先要明确TabLayout是design下的,并非系统原来的widget下的.所以首先在a ...
- TabLayout横排滑动
我以前有写过Tablayout横排滑动,不过相对有些幼稚,而且跟不上一些节奏了. 这个tablayout适合你滑动的相同布局不同数据的那种 像你如果tablayout滑动的每个页面差距特别的大这个就不 ...
- 哪个版本android优化触屏,安卓界最强优化工具超级触控,终于更新了全新体验...
原标题:安卓界最强优化工具超级触控,终于更新了全新体验 安卓用户对于"系统优化"这个词一定不会陌生,因为Android系统越用越卡的毛病难以解决,必须进行优化才能保持流畅.那么如何 ...
- android之ViewPager与TabLayout
使用 TabLayout 很容易实现选项卡的功能.这里将结合 ViewPager.Fragment.TabLayout实现一个具有选项卡功能的程序.本例再上篇讲解的ViewPager与Fragment ...
- Android实战简易教程-第三十四枪(基于ViewPager和FragmentPagerAdapter实现滑动通用Tab)...
上一段时间写过一篇文章<基于ViewPager实现微信页面切换效果> 里面实现了相似微信Tab的页面.可是这样的实现方法有个问题.就是以后全部的代码逻辑都必须在MainActivity中实 ...
- android 事件拦截 (Viewpager不可以左右滑动)
以前没有做过真正的需求,所以从来没有觉得事件拦截分发处理有什么好懂的. 现在做需求了,真的是什么需求都有,你作为开发都要去研究实现.比如说,只能点不能滑动的viewpager.其实这都可以不用view ...
- android view禁用,Android 禁止ViewPager的自带滑动效果
由于最近在做墨水屏的相关工作,ViewPager自带的滑动效果在墨水屏上表现的很不好,残影太重了.所以禁止自带的滑动效果,用接口来接管相关逻辑实现自处理. import android.content ...
- Android使用ViewPager实现左右循环滑动及轮播效果
ViewPager是一个常用的android组件,不过通常我们使用ViewPager的时候不能实现左右无限循环滑动,在滑到边界的时候会看到一个不能翻页的动画,可能影响用户体验.此外,某些区域性的Vie ...
最新文章
- UA MATH575B 数值分析下 统计物理的随机模拟方法5
- Vuex 源码还有一些缺陷?
- Wireshark图解教程
- 微信小程序怎么取mysql_微信小程序如何加载数据库真实数据?
- 【2017年第4期】大数据平台的基础能力和性能测试
- 详解MathType中如何插入特殊符号
- python pyqt教程_『开发技巧』PyQt5入门教程
- wordpress页面里可不可以写php,如何在WordPress页面中创建不同的可编辑部分?
- vue项目电商后台管理系统(一)
- 工业相机的50个知识点
- 2021年饶州中学高考成绩查询,鄱阳饶州中学2019高考成绩喜报、一本二本上线人数情况...
- 【工作感悟】职场工作感悟(一)
- Pdf 插入图片 | 指定位置插入图片 不改变原格式 直接操作
- matlab中contourm,MATLAB 中contour函数的使用
- 30天自制操作系统——第四天使用C语言制作操作系统进度条
- python批量处理1000+的excel文件
- python读取json文件转成excel_Python实现读取json文件到excel表
- elm and halogen
- 洛谷:P2832 行路难(堆优化Dijkstra(错解)bfs(正解) + 记录路径)
- 企业打造顶级研究院的最优路径是什么?