一个用于放置在RecycleView中的图片控件,其主要功能是跟随列表的上下滚动而上下平移,使得呈现出一种图像相对列表静止的感觉。

Overview

ScrollingImageView 提供以下特性:

在垂直方向上,使得该组件随着列表滚动而上线爱平移,可选参数:scrollType(middle | whole)。
scrollType为whole时, 从刚进入列表和完全出列表是都在滚动

scrollType: middle时,仅当item完整展现在列列表中时才滚动

Demo 示例代码

Gradle integration

该库托管于jCenter仓库中,使用时只需要添加以下代码

dependencies {compile 'site.okhttp.codeyel:scrollingImageView:1.0.0'
}
Basic uasge

第一步:在列表的单个item中的对应布局中引入

ScrollingImageView,例如:(item.xml)
<com.yel.image.ScrollingImageViewandroid:id="@+id/img"android:layout_width="match_parent"android:layout_height="200dp"custom:scrollType="middle"
/>

第二步:在代码中添加监听器

常规代码:

final LinearLayoutManager layoutManager = new LinearLayoutManager(getApplicationContext());
recyclerView.setLayoutManager(layoutManager);

需要添加的代码:

recyclerView.addOnScrollListener(new ScrollingImageView.ScrollListener(layoutManager, R.id.img, index));

其中 {index} 表示item在列表中的索引值, {R.id.img} 对应android:id="@+id/img"

Advance uasge

开放自定义滚动的接口

Principle

重写setFrame方法:通过postTranslate方法垂直平移图片,从而显示图片中的不同位置。
设置OnScrollListener监听器,监听列表的滚动位置,来计算获得恰当的平移参数,并将其传递给步骤①中的postTranslate方法。
如下图所示

原图:

当在该控件顶部和在中部时:

平移时的前后对比

源码下载地址:Android图片控件,跟随列表(recyclerView)的上下滚动而同步平移。
源码下载地址

Android图片控件,跟随列表(recyclerView)的上下滚动而同步平移。相关推荐

  1. Android 图片控件ImageView

    前言: 这篇博客聊一聊在Android下ImageView的使用,在此篇博客中, 会讲解到ImageView的一些属性的使用,以及ImageView展示图片的放大.缩小.旋转等操作. 最后再讲解一下A ...

  2. android 绘制正方形图片,是Android的自定义View-绘制流程-正方形图片控件(SquareImageView)...

    前言 了解View的绘制三大流程后,接下来就要对这些知识做一个实践,首先来实现一个在Android中最为常见的控件--方形图片控件,即让图片在一个方形区域内显示,最常见的场景是在九宫格图片当中. 一般 ...

  3. 【Android之SmartImageView图片控件】

    源码地址是https://github.com/loopj/android-smart-image-view,没有sample,本文最后会提供一个sample. smartimageview提供的主要 ...

  4. Gtk常用控件 按钮 图片控件 进度条 滑动窗口 分栏列表

    Gtk常用控件 按钮(GtkButton) // 带图标按钮的创建 // image: 通过 gtk_image_new_from_file()来创建, 参数为图片的路径 void gtk_butto ...

  5. android重要控件各种大全

    Android中国开发精英 目前包括: Android开源项目第一篇--个性化控件(View)篇        包括ListView.ActionBar.Menu.ViewPager.Gallery. ...

  6. Android 开源控件与常用开发框架开发工具类

    Android的加载动画AVLoadingIndicatorView 项目地址: https://github.com/81813780/AVLoadingIndicatorView 首先,在 bui ...

  7. Android开源控件收集整理

    一 .基本控件 TextView HTextView 一款支持TextView文字动画效果的Android组件库.GitHub - hanks-zyh/HTextView: Animation eff ...

  8. Android常用控件有哪些?如何使用?

    Android常用控件介绍及使用 控件 TextView 显示文字,相当于Panel ImageView 显示图片 EditText 输入框,可编辑,可设置软键盘方式 Button 按钮,可附带图片 ...

  9. Android 画廊控件Gallary

    Android 画廊控件Gallary.将图片显示成连续的带状. package com.gallerydemo;import java.lang.reflect.Field; import java ...

最新文章

  1. 模拟请求分页管理中地址转换和缺页中断处理_Linux内存管理:缺页异常(一)
  2. R语言:再谈REmap包
  3. 百度面试 中缀表达式变成后缀表达式
  4. 21. 将报警信息实时发送至邮箱
  5. SpringBoot是如何解析HTTP参数的?
  6. 在soa工程中使用dubbo的步骤
  7. 工作77::配置id传值地址
  8. boost序列化(Serialization)
  9. Android 系统(188)---Android开发:ListView、AdapterView、RecyclerView全面解析
  10. Python计算序列中数字最大差值(美团2016校招笔试题)
  11. 在simulink中建立调度增益控制系统的模型
  12. 2018.07.09 顺序对齐(线性dp)
  13. CAD中 OLE不能旋转_【设计图文】大空间旋转喷头零件的数控加工工艺设计、编程与加工(有全套cad图+程序+中英文翻译)...
  14. convex hull
  15. 7天从代码入门到开发应用,怎样快速提高代码能力?
  16. Unity-ShaderGraph制作2D动画精灵发光
  17. python爬虫——https请求
  18. 你不知道的前端图片处理(万字长文,建议收藏)
  19. 我是如何用问卷调查小程序来赚钱的
  20. IOS7 隐藏状态栏 (电池栏)

热门文章

  1. Java中String的用法
  2. 关于matlab的问题,关于MATLAB的一些基础问题
  3. web表格增删改_白话django之数据的增删改
  4. python版本切换_电脑上安装两个版本的python时,迅速切换环境
  5. 用typescript完成倒计时_「2019 JSConf.Hawaii - Brie.Bunge」大规模应用 TypeScript
  6. linux如何获取raw中的文件路径,如何使用Linux获得Touchscreen Rawdata的坐标
  7. spring boot 教程(二)模板依赖
  8. python下int转日期_减去不同格式的日期并转换为Int - python
  9. 高性能计算机储存部件硬盘,高性能计算机的磁盘系统结构.pdf
  10. 用计算机算3次根号0.00005,数值分析复习题13