ios - 许多应用程序,如 Tweetbot、Facebook 等,都允许您通过向下/向上拉动来关闭图像覆盖。这是如何实现的?

标签 ios objective-c uiscrollview uiimageview uigesturerecognizer

在新的 Tweetbot 应用程序中,图像可以向各个方向“抛出”以关闭它们。在 Facebook 的应用程序中,您可以将其下拉或向上拉以将其关闭。

我很好奇这种效果是如何实现的。我正在使用 UIScrollView 来实现缩放和平移功能,但是如何拉动和释放图像并触发一个方法?

它不是用 UIPanGestureRecognizer 完成的,是吗,因为这会与 UIScrollView 平移手势识别器冲突?不过,这很好,因为您只能在完全缩小时关闭图像(并且无法平移 ScrollView ),因此不会有任何冲突。

我很抱歉缺少代码(因为我对如何开始感到困惑),但我希望上面的示例能够很好地解释我正在描述的功能。

最佳答案

在您的 UIScrollViewdelegate 中实现 -scrollViewDidScroll:

或者继承 UIScrollView 并覆盖 -setContentOffset:

关于ios - 许多应用程序,如 Tweetbot、Facebook 等,都允许您通过向下/向上拉动来关闭图像覆盖。这是如何实现的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20460714/

相关文章:

ios - dataTaskWithRequest 对于一个非常具体的字符串花费的时间太长

iphone - UIScrollView contentSize 问题

ios - UIScrollView 只缩放到 UIImageView 的大小

ios - Swift: AVPlayer - 如何从 URL 获取 mp3 文件的长度?

iphone - 两个 UIScrollViews 得到 [__NSCFConstantString _isDecompressing] 错误

ios - 用动画填充完整 UIImage 的 UIImageView 百分比

objective-c - Obj-C iOS 删除 UITableViewCell

ios - 影子滞后于用户界面

iphone - iPhone应用程序的国际化

iphone - 如何获取有关 UIScrollView 中页面的信息?