广告
返回顶部
首页 > 资讯 > 精选 >Android实现探探图片滑动效果
  • 634
分享到

Android实现探探图片滑动效果

android图片滑动roi 2023-05-31 02:05:39 634人浏览 独家记忆
摘要

之前一段时间,在朋友的推荐下,玩了探探这一款软件,初玩的时候,就发现,这款软件与一般的社交软件如陌陌之类的大相径庭,让我耳目一新,特别是探探里关于图片滑动操作让人觉得非常新鲜。所以在下通过网上之前的前辈的经历加上自己的理解,也来涉涉水。下面

之前一段时间,在朋友的推荐下,玩了探探这一款软件,初玩的时候,就发现,这款软件与一般的社交软件如陌陌之类的大相径庭,让我耳目一新,特别是探探里关于图片滑动操作让人觉得非常新鲜。所以在下通过网上之前的前辈的经历加上自己的理解,也来涉涉水。下面是网上找的探探的原界面

Android实现探探图片滑动效果

当时就非常想通过自己来实现这种仿探探式的效果,然而却没什么思路。不过毋庸置疑的是,这种效果的原理肯定和 ListView /RecyclerView 类似,涉及到 Item View 的回收和重用,否则早就因为大量的 Item View 而 OOM 了。
从View入手,RecyclerView 是自带 Item View 回收和重用功能的,而且,RecyclerView 的布局方式是通过设置 LayoutManager 来实现的,这样就充分地把布局和 RecyclerView 搞定了。

继承 RecyclerView.LayoutManager , 显示自己管理布局, 比如最多显示4个view, 并且都是居中显示.
底部的View还需要进行缩放,平移操作.

public class OverLayCardLayoutManager extends RecyclerView.LayoutManager {  private static final String TAG = "swipecard";  public static int MAX_SHOW_COUNT = 4;  public static float SCALE_GAP = 0.05f;  public static int TRANS_Y_GAP;  public OverLayCardLayoutManager(Context context) {    //平移时, 需要用到的参考值    TRANS_Y_GAP = (int) (20 * context.getResources().getDisplayMetrics().density);  }  @Override  public RecyclerView.LayoutParams generateDefaultLayoutParams() {    //必须要实现的方法    return new RecyclerView.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);  }  @Override  public void onLayoutChildren(RecyclerView.Recycler recycler, RecyclerView.State state) {    //在这个方法中进行View的布局操作.此方法会被调用多次.    detachAndScrapAttachedViews(recycler);    int itemCount = getItemCount();    if (itemCount < 1) {      return;    }    //top-3View的position    int bottomPosition;    //边界处理    if (itemCount < MAX_SHOW_COUNT) {      bottomPosition = 0;    } else {      bottomPosition = itemCount - MAX_SHOW_COUNT;    }    //从可见的最底层View开始layout,依次层叠上去    for (int position = bottomPosition; position < itemCount; position++) {      //1:重recycler的缓存机制中拿到一个View      View view = recycler.getViewForPosition(position);      //2:和自定义ViewGroup一样, 需要先addView      addView(view);      //3:和自定义ViewGroup一样, 也需要测量View的大小      measureChildWithMargins(view, 0, 0);      int widthSpace = getWidth() - getDecoratedMeasuredWidth(view);      int heightSpace = getHeight() - getDecoratedMeasuredHeight(view);      //4:和自定义ViewGroup的onLayout一样, 需要layout View.对View进行布局       //我们在布局时,将childView居中处理,这里也可以改为只水平居中      layoutDecoratedWithMargins(view, widthSpace / 2, heightSpace / 2,          widthSpace / 2 + getDecoratedMeasuredWidth(view),          heightSpace / 2 + getDecoratedMeasuredHeight(view));            //第几层,举例子,count =7, 最后一个TopView(6)是第0层,      int level = itemCount - position - 1;      //如果不需要缩放平移, 那么下面的代码可以注释掉...      //除了顶层不需要缩小和位移      if (level > 0 ) {        //每一层都需要X方向的缩小        view.setScaleX(1 - SCALE_GAP * level);        //前N层,依次向下位移和Y方向的缩小        if (level < MAX_SHOW_COUNT - 1) {          view.setTranslationY(TRANS_Y_GAP * level);          view.setScaleY(1 - SCALE_GAP * level);        } else {//第N层在 向下位移和Y方向的缩小的成都与 N-1层保持一致          view.setTranslationY(TRANS_Y_GAP * (level - 1));          view.setScaleY(1 - SCALE_GAP * (level - 1));        }      }    }  }}

--结束END--

本文标题: Android实现探探图片滑动效果

本文链接: https://www.lsjlt.com/news/222823.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android实现探探图片滑动效果
    之前一段时间,在朋友的推荐下,玩了探探这一款软件,初玩的时候,就发现,这款软件与一般的社交软件如陌陌之类的大相径庭,让我耳目一新,特别是探探里关于图片滑动操作让人觉得非常新鲜。所以在下通过网上之前的前辈的经历加上自己的理解,也来涉涉水。下面...
    99+
    2023-05-31
    android 图片滑动 roi
  • Android仿探探卡片式滑动效果实现
    前言 第一次进入探探软件界面,就被这种通过卡片式滑动来选择“喜欢/不喜欢”的设计所吸引了。当时就非常想通过自己来实现这种仿探探式的效果,然而却没什么思路。不过毋庸置疑的是,这种...
    99+
    2022-06-06
    动效 Android
  • Android开源堆叠滑动控件仿探探效果
    堆叠滑动控件,类似于社交软件探探的效果,并增加以下扩展: 支持滑动方向控制 支持消失方向控制 支持嵌入到ViewPager等滑动控件 支持内嵌ListView,Recycle...
    99+
    2022-06-06
    Android
  • Android实现图片左右滑动效果
    关于滑动效果,在Android中用得比较多,本示例实现的滑动效果是使用ViewFlipper来实现的,当然也可以使用其它的View来实现。接下来就让我们开始实现这种效果。 接...
    99+
    2022-06-06
    图片 动效 Android
  • Android 实现局部图片滑动指引效果
    Android 实现局部图片滑动指引效果 而ViewPager的事件监听器代码如下:   // 滑动页面更改事件监听器 private class ImagePageC...
    99+
    2022-06-06
    图片 Android
  • Android组件Glide实现图片平滑滚动效果
    Glide是一款基于Android的图片加载和图片缓存组件,它可以最大性能地在Android设备上读取、解码、显示图片和视频。Glide可以将远程的图片、视频、动画图片等缓存在...
    99+
    2022-06-06
    平滑 图片 glide 动效 Android
  • Android实现局部图片滑动指引效果示例
    今天发布本文的原因是应一个网友要求,就是实现局部的图片滑动指引效果。这种效果一般是在新闻客户端上比较常见,其功能是: 1、顶部单张图片左右拖拉滑动; 2、带指引; 3、仅...
    99+
    2022-06-06
    示例 图片 Android
  • jQuery如何实现图片滑动效果
    这篇文章主要为大家展示了“jQuery如何实现图片滑动效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“jQuery如何实现图片滑动效果”这篇文章吧。思路:当鼠...
    99+
    2022-10-19
  • AndroidFlutter实现图片滑动切换效果
    目录前言SlideTransition 介绍示例效果实现总结前言 我们开始来介绍转换类的动画组件,实际上这类转换动画组件也可以自己通过 AnimatedBuilder&nb...
    99+
    2022-11-13
  • android Gallery组件实现的iPhone图片滑动效果实例
    实现的效果图,可左右滑动: 一、先在将Gallery标签放入: 代码如下:<?xml version="1.0" encoding="utf-8"?...
    99+
    2022-06-06
    gallery 动效 iphone Android
  • Android实现图片拖动效果
    要求: 1.通过手指移动来拖动图片  2.控制图片不能超出屏幕显示区域 技术点: 1.MotionEvent处理 2.对View进行动态定位(layout) acti...
    99+
    2022-06-06
    图片 动效 Android
  • vue怎么实现探探滑动堆叠组件
    这篇文章主要讲解了“vue怎么实现探探滑动堆叠组件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“vue怎么实现探探滑动堆叠组件”吧!一. 功能分析简单使用下探探会发现,堆叠滑动的功能很简单,...
    99+
    2023-07-04
  • jquery实现图片轮播和滑动效果
    本文实例为大家分享了jquery实现图片轮播和滑动效果的具体代码,供大家参考,具体内容如下 实习做了一个简易的图片轮播效果 下图是做出来的效果 源码 html 和 js部分 <...
    99+
    2022-11-12
  • Android中怎么利用ViewPager实现图片滑动预览效果
    本篇文章给大家分享的是有关Android中怎么利用ViewPager实现图片滑动预览效果,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。xml代码:<xml ve...
    99+
    2023-05-30
    android viewpager
  • Android实现ViewFlipper图片动画滑动
    今天给大家实现的功能是类似于ViewFlipper的图片滑动的效果,供大家参考,具体内容如下 现在就直接上代码吧! 代码实例: 1、xml布局文件 <xml version="...
    99+
    2022-11-13
  • 在Android app中实现九(n)宫格图片连续滑动效果
      今天写这篇文章的缘由是前一段时间一个网友在我的博客上面留言,想要实现在GridLayout(相当于九宫格)中点击每项可左右滑动显示该宫格的图片,当该宫格的图片显示...
    99+
    2022-06-06
    图片 动效 app Android
  • 如何使用css实现图片的滑动效果
    小编给大家分享一下如何使用css实现图片的滑动效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   <!DOCTYPE...
    99+
    2022-10-19
  • Android实现平滑翻动效果
    本文实例为大家分享了Android实现平滑翻动效果的具体代码,供大家参考,具体内容如下 效果 1.activity加implements implements GestureD...
    99+
    2022-11-12
  • Android开发之使用ViewPager实现图片左右滑动切换效果
    Android中图片的左右切换随处可见,今天我也试着查阅资料试着做了一下,挺简单的一个小Demo,却也发现了一些问题,话不多说,上代码~: 使用了3个xml文件作为ViewPa...
    99+
    2022-06-06
    图片 viewpager android开发 Android
  • Android实现手势滑动多点触摸放大缩小图片效果
    网上文章虽多,但是这种效果少之又少,我真诚的献上以供大家参考 实现原理:自定义ImageView对此控件进行相应的layout(动态布局). 这里你要明白几个方法执行的流程: ...
    99+
    2022-06-06
    小图 图片 手势 Android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作