对于ViewPager,应该没有人在项目中没使用过它,效果非常的赞,使用也非常简单,但是如果自己来实现这样的效果,我想并非三下五除二的事了,这里涉及到怎么自定义ViewGroup了,它相比自定义View还要复杂一些,所以这次从头自尾一点点实现这样的效果来对自定义ViewGoup有深刻的认识,知其原理才能做到随心所欲,下面开始: 先预览一下要实现的效果图: 下面则新建一个工程慢慢来实现它: 首先需要用到几张效果图,这里将这些图分别放到两个文件夹中,如下: 下面新建一个自定义的ViewGroup,将…
对于系统的ViewGroup我们已经是十分熟悉了,最常用的LinearLayout和RelativeLayout几乎是天天要打交道,下面我们就来看看,如何一步一步将其实现: 一.首先当然也是最通常的新建一个Android工程,然后在里面新建一个类继承自ViewGroup,这里我们把这个类叫做MyViewPager.   实现继承ViewGroup之后,会发现,需要我们实现其中未实现的方法:第一个当然是两参的构造函数,用于xml布局文件生成对应的组件对象:第二个则是onLayout,这个方法我们应…
开发过程中,需要达到 HorizontalScrollView和ViewPager的效果,于是直接重写了HorizontalScrollView来达到实现ViewPager的效果. 实际效果图如下: (1)自定义HorizontalScrollView类:AppHorizontalScrollView实现: package com.czm.ui.view; import java.util.ArrayList; import android.content.Context; import and…
RecyclerView实现ViewPager效果,以及横向的ListView效果.效果图如下: Github: https://github.com/hpu-spring87/recyclerviewpager…
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 使用RecyclerView+ViewPager实现类似TabLayout+ViewPager效果. 效果图 使用步骤 一.项目组织结构图 注意事项: 1.  导入类文件后需要change包名以及重新import R文件路径 2.  Values目录下的文件(strings.xml.dimens.xml.colors.xml等),如果项目中存在,则复制里面的内容,不要整个覆盖 二.导入步骤 (1)在build.gradle中引用…
1. 这里我们继承已有ViewGroup实现自定义控件,模拟出来ViewPager的效果,如下: (1)实现的效果图如下: (2)实现步骤: • 自定义view继承viewGroup • 重写onLayout方法,为每一个子View确定位置 • 重写onTouchEvent方法,监听touch事件,并用scrollTo()或scrollBy()方法移动view • 监听UP事件,当手指抬起时候,判断应显示的页面位置,并计算距离.滑动页面. • 添加页面切换的监听事件 2. 具体实现过程,如下:…
看代码就好了,RecyclerView实现Viewpager的效果,添加了界面的改变监听,用法和普通的RecyclerView一样,还可以设置一次滑动多个界面: public class VpRecyView extends RecyclerView{ public VpRecyView(Context context) { super(context); init(); } public VpRecyView(Context context, @Nullable AttributeSet at…
Android提供的ViewPager类太复杂,有时候没有必要使用,所以重写一个HorizontalScrollView来实现类似的效果,也可以当做Gallery来用 思路很简单,就是重写onTouchEvent事件,在手指抬起或者取消的时候,进行smoothScroll的操作,具体请看代码: 布局文件:activity_test.xml <?xml version="1.0" encoding="utf-8"?> <com.example.tes…
前些天看到有人在论坛上问这种效果怎么实现,没写过也没用过这个功能,网上查了一下,大多是使用ViewPager+GridView或者HorizontalScrollView+GridView实现,不过貌似有点复杂,太懒,没仔细看.这两天学习RecyclerView的使用(网上有很多文章,建议大家阅读本博客的时候先去了解一下),发现RecyclerView可以实现GridView 的横向滚动效果,不过没有分页,因此决定自己写一个. Demo已上传到GitHub,CSDN下载频道,是AS项目,使用AS…
Android提供的ViewPager类太复杂,有时候没有必要使用,所以重写一个HorizontalScrollView来实现类似的效果,也可以当做Gallery来用 思路很简单,就是重写onTouchEvent事件,在手指抬起或者取消的时候,进行smoothScroll的操作,具体请看代码: 布局文件:activity_test.xml ? 1 2 3 4 5 6 1 <!--?xml version=1.0 encoding=utf-8?-->  2 <com.example.tes…