Android:谷歌照片,如具有缩放功能的网格视图

Posted

技术标签:

【中文标题】Android:谷歌照片,如具有缩放功能的网格视图【英文标题】:Android : Google Photos like Grid View with Zoom Functionality 【发布时间】:2015-12-07 05:01:20 【问题描述】:

我正在使用回收视图和 GridLayoutManager 在网格中显示图像。我想添加 Google 照片等功能,当用户捏缩放时,网格将自动排列并在 Gridview 中调整图像大小。我正在寻找示例代码参考或程序如何实现它。 TIA。

【问题讨论】:

【参考方案1】:

我不确定这是否可行,但最简单的方法是创建一个带有捏合功能的 ontouchlistener 以放大 onBindViewHolder,您还应该在 ImageView 及其所有父级上添加 android:clipToPadding="false" 并在所有父级上添加 android:clipChildren="false"父母。

【讨论】:

【参考方案2】:

我将这个库推荐给你的项目 recyclerview 中的 pinchzoon https://github.com/imablanco/Zoomy

你只需要在你的 onBindViewHolder 中这样调用

val builder = Zoomy.Builder(context as MainPrivateActivity)
        .target(holder.itemView)
        .interpolator(OvershootInterpolator())
        .tapListener  v ->
                listener.onItemClick(it)

        
        .doubleTapListener  v ->
            //listener.onItemLike(v, position)
        
    builder.register()

【讨论】:

以上是关于Android:谷歌照片,如具有缩放功能的网格视图的主要内容,如果未能解决你的问题,请参考以下文章

具有自定义网格视图的 AsyncTask

具有可滚动布局和过滤器面板的视图排列

Android显示图像位图错误

如何更新我的功能,以便无论缩放和视图如何,谷歌地图上总是有 10 个标记(混搭使用 CS50)

Android 谷歌地图 API v2 中心缩放

Android将动画缩放到指定大小