首页
学习
活动
专区
圈层
工具
发布

进来看看是不是你想要的效果,Android吸顶效果,并有着ViewPager左右切换

老规矩,先上图,看看是不是你想要的 美团: [美团] --- 来一个图形分析 接下来我要写一个简单示例,先分析一下布局,见下图,最外层是NestedScrollView,之后嵌套一个LinearLayout...头部,中间TabLayout选择器,底部一个ViewPager ViewPager高度需要动态控制,看自己的需求了,如果是美团那种效果,就是 ViewPager高度 = NestedScrollView...ScrollView滑动,那么就需要先重写NestedScrollView控件,用于控制最大的滑动距离,当达到最大滑动距离,再分发给RecyclerView滑动!...--- NestedScrollView重写 需要继承自NestedScrollView并重写onStartNestedScroll和onNestedPreScroll方法,如下 package com.cyn.mt...--相当于分析图中绿色标记处ViewPager,代码中动态设置高度--> viewpager.widget.ViewPager

2.2K30

嵌套滑动通用解决方案--NestedScrollingParent2

京东首页 这是京东的首页,忽略顶部和顶部,大致理解视图结构就是:最外层为多布局的RecyclerView,最后一个item是tabLayout+ViewPager,ViewPager的每个fragment...京东首页 可见,在向上滑动页面时,当tabLayout滑动到顶部时,外层RecyclerView停止滑动,此时tabLayout即为吸顶状态,接着会 滑动ViewPager中的内层RecyclerView...2.2 再来看看NestedScrollView嵌套RecyclerView 关于NestedScrollView嵌套RecyclerView的情况,即头部和列表可以一起滑动。如下图: ?...NestedScrollView嵌套RecyclerView 参考这篇实名反对《阿里巴巴Android开发手册》中NestedScrollView嵌套RecyclerView的用法。..., viewPager内的fragment中 也有RecyclerView,处理外层、内层 RecyclerView的嵌套滑动问题,类似淘宝、京东首页。

4K31
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android中Fragment+ViewPager的配合使用

    官方推荐 ViewPager与Fragment一起使用,可以更加方便的管理每个Page的生命周期,这里有标准的适配器实现用于ViewPager和Fragment,涵盖最常见的用例。...num区别标签,其实具体应用中可以使用真实的fragment对象来作为叶片         mNum = getArguments() !...    android.support.v4.view.ViewPager         android:id="@+id/viewpager"         android:layout_width...效果与ViewPager中添加View的效果是一样的!但是它与View的区别在于它有自己的生命周期,可以随时更改自己的状态便于管理。...事实上使用FragmentPagerAdapter 时,Fragment对象会一直存留在内存中,所以当有大量的显示页时,就不适合用FragmentPagerAdapter了,FragmentPagerAdapter

    1.2K100

    细说 AppbarLayout,如何理解可折叠 Toolbar 的定制

    AppBarLayout 内部的子 View 不一定非要是 Toolbar,它可以是任何 View,比如,你可以放置进去一张图片、一个列表、一个 ViewPager 等等。...我们知道,Android 的历史进程中,大概有 TitleBar、ActionBar、Toolbar 的进化,这是 Android 设计语言的改良过程。.../android.support.design.widget.CoordinatorLayout> 上面布局文件中,NestedScrollView 就是那个配套的滑动组件,它需要和 AppBarLayout...向上滑动的时候,Toolbar 先滑动,然后 NestedScrollView 中的内容再滑动。 向下滑动的时候,NestedScrollView 中的内容先滑动,然后 Toolbar 再一起滑动。...大家可以参考下 ViewPager 是怎么滑动的,只不过 ViewPager 是水平方向上的,AppBarLayout 中的内容是垂直方向上的行为。

    3.5K30

    Android之ViewPager的简单使用

    Android ViewPager的简单使用 Android 3.0后引入的一个UI控件——ViewPager(视图滑动切换工具) 功能:通过手势滑动可以完成View的切换,一般是用来做APP 的引导页或者实现图片轮播...setPageTransformer()方法为我们的ViewPager 设置切换时的动画效果。...instantiateItem(): ①将给定位置的view添加到ViewGroup(容器)中,创建并显示出来 ②返回一个代表新增页面的Object(key),通常都是直接返回view本身就可以了,当然你也可以...PagerTitleStrip 运行效果: 三个view的布局文件还是和实例1中的一样 修改activity_main.xml布局文件 <?...为PagerTabStrip即可 这些简单的使用样式都太丑,在我们的开发中往往都会和其他控件一起使用。

    4.7K40

    炫酷~RecyclerView视差装饰器-ParallaxDecoration

    老规矩,先上图,看看是不是你想要的,美团效果: 最终效果: 来一个图形分析 接下来我要写一个简单示例,先分析一下布局,见下图,最外层是NestedScrollView,之后嵌套一个LinearLayout...头部,中间TabLayout选择器,底部一个ViewPager ViewPager高度需要动态控制,看自己的需求了,如果是美团那种效果,就是ViewPager高度 = NestedScrollView高度...那么就需要先重写NestedScrollView控件,用于控制最大的滑动距离,当达到最大滑动距离,再分发给RecyclerView滑动!...NestedScrollView重写 需要继承自NestedScrollView并重写onStartNestedScroll和onNestedPreScroll方法,如下 package com.cyn.mt...--相当于分析图中绿色标记处ViewPager,代码中动态设置高度--> viewpager.widget.ViewPager

    85300

    Android开发笔记(一百三十五)应用栏布局AppBarLayout

    那么Android5.0也同时给出了相应的解决方案,即推出MaterialDesign库,通过该库中的AppBarLayout控件,对Toolbar加以包装,从而实现顶部工具栏的动态变化效果。...,还要通知头部控件(通常是Toolbar),告诉头部控件你要怎么滚,是爱咋咋滚,还是满大街滚; 具体到实现上,要在工程中做以下修改: 1、添加几个库的支持,包括appcompat-v7库(Toolbar...RecyclerView是其中一个特工,它可用来替代ListView和GridView;替代ScrollView的则另有其人,它便是嵌套滚动视图NestedScrollView,在Android5.0之后的...NestedScrollView多出来的功能,也就是跟AppBarLayout配合使用,以便触发Toolbar的滚动行为,你可以把它当作是兼容了Android5.0新特性的增强版ScrollView。...3、大家都知道ViewPager是左右滚动的翻页视图,用户通过手势把页面横向拉动一段距离后松开,系统会判断接下来是自动左滚还是自动右滚,总之最后用户看到的是一个完整的页面,而不是拉到一半的页面。

    2.4K40

    Android-ViewPager2

    今天我们介绍一下猪脚-ViewPager2,ViewPager2的出现是为了替代ViewPager,它有以下几个优势: 支持RTL布局, 支持竖向滚动 支持notifyDataSetChanged RTL...registerOnPageChangeCallback替换了原来的 addPageChangeListener ViewPager2是直接继承ViewGroup的,意味着和ViewPager不兼容.ViewPager2...的核心实现就是RecyclerView+LinearLayoutManager了,因为LinearLayoutManager本身就支持竖向和横向两种布局方式,所以ViewPager2也能很容易地支持这两种滚动方向了...具体使用我查看了Google的github仓库,地址 :ViewPager2 注意Github的ViewPager2是Kotlin版本,我在这里给大家翻译成Java版本进行解读。...itemView); tvPage =itemView.findViewById(R.id.tv_baseitem_page); } } } Activity中的代码

    1.6K20

    Android笔记:ViewPager和TabLayout连用时,去除ViewPager预加载

    直接上代码,把代码copy到Fragment里面就可以了,最主要的就是一个方法: setUserVisibleHint(boolean isVisibleToUser) 代码如下: 先定义两个成员变量:...//Fragment的View加载完毕的标记 private boolean isLoading = false; //Fragment对用户可见的标记 private boolean isUIVisible...; //setUserVisibleHint和lazyLoad两个方法是为了去除viewPager+fragment的懒加载 @Override public void setUserVisibleHint...isLoading && isUIVisible) { loadInfo();//加载数据的方法 //数据加载完毕,恢复标记,防止重复加载 isLoading...= true; isUIVisible = false; } } 以上是我对此功能的一个小记录,大家有更好的方法或者问题可在下方留言。

    60820

    CoordinatorLayout使用(四):和Toolbar的简单使用

    再给Toolbar添加一个 app:layout_scrollFlags="scroll|snap|enterAlways" 还有对应的android.support.v4.widget.NestedScrollView...下面一起来看一看 ---- layout_scrollFlags了解 上面具体的例子,对应的滑动效果是由 app:layout_scrollFlags 来设置的 我们查阅一下,发现有5中可以选择的(...---- 中场小节 CoordinatorLayout中, 如果NestedScrollView要和Toolbar互动的话(CollapsingToolbarLayout等之后在了解,这里不涉及)..." 再给Fragment中添加一点TextView 在Activity中,绑定对应的TabLayout和ViewPager tabLayout = (TabLayout) findViewById(R.id.tablayout...a5-2.gif 大体就这样了 代码见后面的地址 ---- 简单小节 CoordinatorLayout中,NestedScrollView和Toolbar联动 注意Toolbar外面要套AppBarLayout

    1.6K30
    领券
    首页
    学习
    活动
    专区
    圈层
    工具
    MCP广场