摘要:六部实现选项卡界面 一. 在gradle文件添加以下代码: implementation 'com.android.support:design:28.0.0' 在gradle文件添加以上代码后,才能使用Tablayout(版本号28.0.0是我做实验时最新的版本) 二.布局代码 <android.support.design.widget.TabLayout android:layout_width="match_parent" android:layout_height…
实现界面: 布局代码: <?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"…
一.在配置文件采用自定义Style方法去除Actionbar <resources> <style name="MyTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</item…
先看演示效果: 1  ViewPager类提供了多界面切换的新效果. 新效果有如下特征: [1] 当前显示一组界面中的其中一个界面. [2] 当用户通过左右滑动界面时,当前的屏幕显示当前界面和下一个界面的一部分. [3]滑动结束后,界面自动跳转到当前选择的界面中 2 介绍里面几个比较重要的方法与接口 1,OnPageChangeListener  ViewPager页面进行切换监听接口  其中我们经常要实现public void onPageSelected(int arg0),public v…
什么是ViewPager? 关于ViewPager的介绍和使用,在之前我写过一篇相关的文章<安卓开发复习笔记——ViewPager组件(仿微信引导界面)>,不清楚的朋友可以看看,这里就不再重复. 什么是Fragment? Fragment是Android3.0后新增的概念,Fragment名为碎片,不过却和Activity十分相似,具有自己的生命周期,它是用来描述一些行为或一部分用户界面在一个Activity中,我们可以合并多个Fragment在一个单独的activity中建立多个UI面板,或…
  延续昨天,今天使用ViewPager和TabLayout来实战一下,顺便补充一下新知识:   1.线形图,显示一周的温度情况.   2.饼状图,2017年互联网教育细分领域投资情况.   3.柱状图,2013-2017年互联网教育市场的规模. 1.准备   和昨天一样,导入两个库 implementation 'com.android.support:design:27.1.1' implementation 'com.github.lecho:hellocharts-library:1.5…
边界的时候会看到一个不能翻页的动画,可能影响用户体验.此外,某些区域性的ViewPager(例如展示广告或者公告之类的ViewPager),可能需要自动轮播的效果,即用户在不用滑动的情况下就能够看到其他页面的信息. 为此我查阅了网络上现有的一些关于实现这样效果的例子,但都不是很满意,经过反复实验,在这里总结并分享给大家,希望能有所帮助. 循环滑动效果的实现:PagerAdapter 我们知道ViewPager自带的滑动效果非常出色,因此我们基本不需要处理这个滑动,只处理内容的显示.而内容的显示是…
ViewPager这个小demo实现的是可以左右循环滑动图片,下面带索引,滑到最后一页在往右滑动就要第一页,第一页往左滑动就到最后一页,先上效果图,用美女图片是我一贯的作风,呵呵 1.    首先看一些layout下的xml [html] view plain copy   <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_…
解决ViewPager双层嵌套的滑动问题 今天我分享一下ViewPager的双层嵌套时影响内部ViewPager的触摸滑动问题 之前在做自己的一个项目的时候,遇到广告栏图片动态切换,我第一时间想到的就是ViewPager,整个软件只有广告这一部分ViewPager还好说,但是软件越复杂出现的问题越多,尤其是遇到ViewPager双层嵌套问题,找了很多资料 解决方法一:自定义ViewPager做为父ViewPager控件 01 public class ParentViewPager extend…
上一段时间写过一篇文章<基于ViewPager实现微信页面切换效果> 里面实现了相似微信Tab的页面.可是这样的实现方法有个问题.就是以后全部的代码逻辑都必须在MainActivity中实现.这样就造成MainActivity文件很臃肿,不利于代码管理. 以下我们基于ViewPager和FragmentPagerAdapter实现滑动通用Tab. 布局文件基本和上篇文章一致. 1.top.xml: <?xml version="1.0" encoding="…
上周客户反馈Contacts快速滑动界面切换tab有明显卡顿,让优化. 自己验证又没发现卡顿现象,但总得给客户一个技术性的回复,于是看了一下ViewPager源码中处理滑动切换tab的过程. ViewPager  源码位置: android\frameworks\support\v4\java\android\support\v4\view\ViewPager.java ViewPager其实就是一个重写的ViewGroup,使用ViewPager可以参考SDK中的demo:sdk\extras…
看下效果图,自己考虑下自己会如何实现,然后再继续看看作者的实现~ 不记得什么时候,我留意到到美团网首页有使用ViewPager+GridView实现左右滑动查看更多分类的一个功能,感觉它很有趣,于是想着自己动手也实现这样一个功能,和往常一样,主要是想总结一下我在学习过程中的一些笔记以及需要注意的地方. 首先看一下效果图: 其中需要注意的有如下几个点: 一:使用GridView作为每个ViewPager的页面,也就是说每个ViewPager的页面都是inflate出一个GridView新实例  二…
以前没有做过真正的需求,所以从来没有觉得事件拦截分发处理有什么好懂的. 现在做需求了,真的是什么需求都有,你作为开发都要去研究实现.比如说,只能点不能滑动的viewpager.其实这都可以不用viewpager了.直接用fragment的replace掉就行了.那我想要不可以滑动的viewpager怎么办. 很简单,在处理事件的时候,return true表示自己处理,不往下面传递.自己消费,那如果你不想自己处理,自己不做任何处理,就 return false; 那viewpager就不会滑动了…
1) ViewPager提供了左右滑动切换页面的方法,但是它所提供的标题只是无语,估计没有真正的项目会照搬拿过来;并且它只能一页一页滑,我想直接查看最后一页要滑半天; 2) 看了腾讯新闻客户端感觉体验很好,所以就仿着写了,因为只是做个demo供大家交流也是给自己做个笔记,所以功能实现就行demo比较简单; 3) 有兴趣的可以在demo的基础拓展,如果哪里写得不好还望大家多多赐教.一起交流 4) 直接上主要代码,所以注释都写在代码里,最后会给工程包.(PS是在AS环境下生成的) 先放个效果图: M…
  今天介绍一下ViewPager与TabLayout的简单用法 1.准备   在一切开始之前,你懂得,先导库,老方法,在build.gradle直接添加下面这一句   implementation 'com.android.support:design:27.1.1'   可能版本有差异,具体视情况而定,知识是活的 2.设计布局 (1).主布局 <?xml version="1.0" encoding="utf-8"?> <android.sup…
如题,当SwipeRefreshLayout包裹ViewPager时,发现ViewPager经常滑不动,容易把上面的刷新的小圈圈拽出来,只有手指在屏幕上向斜上方滑或者水平滑动,才能保持正常,这是一个滑动冲突问题. 首先上网查一下别人怎么解决的 好像都是这个解决方案: viewPager.setOnTouchListener(new View.OnTouchListener() { public boolean (View v, MotionEvent event) { switch (event…
首先要说的是,滑动界面,我们需要一个以上的view切换,实际上可以使用ArrayList<View> pageViews要保存view信息,然后切换 LayoutInflater inflater = getLayoutInflater(); pageViews = new ArrayList<View>(); pageViews.add(inflater.inflate(R.layout.item01, null)); pageViews.add(inflater.inflate…
这里特使用了github中的一个项目作为例子进行解析,地址为:https://github.com/LiqiNew/HandlerFrame/tree/master/handlerFrame/src/main/java/com/liqi/handler 本例子针对安卓程序实现了跨界面的Handler通讯.传统来说,安卓程序中的Handler是只能在一个界面类中运行的,并不能让他存在于其他的界面类,但在这个项目中,"只要在HandlerFrame里面订阅过的对象,在任何界面都可以发送信息去跟订阅对…
什么是ViewPager VIewPager是安卓3.0之后提供的新特性,继承自ViewGroup,专门用来实现左右滑动切换View的效果.如果想向下兼容需要 android-support-v4.jar这个包的支持. ViewPager与ListView的常用控件的实现方式差不多,步骤如下: 步骤:声明实例化控件->设置数据源->配置适配器->绑定适配器->(添加监听) 声明控件 使用该类时,需要在BuildPath中加入"android-support-v4.jar&…
这2天事情比较多,都没时间更新博客,趁周末,继续继续~ 今天来讲个比较新潮的组件——ViewPager 什么是ViewPager? ViewPager是安卓3.0之后提供的新特性,继承自ViewGroup,专门用以实现左右滑动切换View的效果. 如果想向下兼容就必须要android-support-v4.jar这个包的支持,这是一个来自google提供的一个附加包. 通俗点来讲,就是现在市面上大多数app,安装完第一次打开软件会出现的一个左右滑动的引导界面. 先来看下效果图: 这是一个仿微信的…
在安卓开发中,是否遇见过一些很酷的视差动画效果,当ViewPager滑动下一页的时候,页面内的各种元素也能跟随滑动做位移效果,整体看起来非常有活力. 关键的PageTransformer PageTransformer的用途这里就不展开了,相信做Android开发的都经常使用它实现ViewPager的各种切换效果. public void transformPage(@NonNull View view, float position) 关键点就是PageTransformer的函数,这里详细讲…
我的是在viewpager中某个fragment中有gallery... 导致无法滑动,网上找到解决方法. 自定义Gallery. 代码: import android.content.Context; import android.support.v4.view.ViewPager; import android.util.AttributeSet; import android.view.GestureDetector.OnGestureListener; import android.vi…
package teamhgl.xinwensudu; import android.os.Bundle;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.ViewPager;import android.view.…
在Drawable目录下创建资源文件 使用shape标签画出背景圆点与当前圆点 背景圆点: <?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval" > <solid android:color="…
有时候就是这样,研究一个问题,一开始想到了一个觉得可行的方案,然后去尝试:尝试了很久.很多次,已经要放弃了,关掉电脑心里 想这个需求没办法实现:在去上厕所的路上突然想到了一个点子,第二天一试,尼玛,搞了这么久的东西,十几二十分钟就解决了...... 这次我遇到的是这样一个问题,由于系统的CalendarView不太美观,所以要自己实现一个日历的布局:所以想到了使用GridView,然后 用ViewPager做左右滑动切换日期的效果:         但是ViewPager是确定页数来滑动的,而且…
//触摸事件 pager.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { //请求父控件不准许拦截事件 v.getParent().requestDisallowInterceptTouchEvent(true); //自己也不处理 return false; } }); pager.setOnPageChangeListen…
养成习惯,做过代码记录总结. ViewPager 使用记录 1. ViewPage 位于V4包. 2.主要用来做banner轮播. 3.原理:适配器重用提高效率,与listview等一个原理. 下面记录实现代码. 一: 在布局里使用ViewPager <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.…
使用viewPager进无限滑动,这里的实现是在适配器里面进行,当然在外头使用滑动监听也行. import android.support.v4.view.PagerAdapter; import android.view.View; import android.view.ViewGroup; import java.util.ArrayList; public class ReadViewPagerAdapter extends PagerAdapter { private ArrayLis…
ViewPage是android-support-v4.jar包提供的用于页面滑动的库,android-support-v4.jar是google推荐使用的一个类库,在项目中使用之前,你必须其添加到项目中(项目点右键Build path->configure build path,然后找到jar进行添加) 1.在xml布局文件中添加android.support.v4.view.ViewPager容器及显示导航所用标签android.support.v4.view.PagerTitleStrip…
public class MyViewPager extends ViewPager { private RecyclerView recyclerView; public MyViewPager(@NonNull Context context) { super(context); } public MyViewPager(@NonNull Context context, @Nullable AttributeSet attrs) { super(context, attrs); } pub…