gpt4 book ai didi

ios - 如何在边缘附近滚动的情况下将 View 拖动到 UIScrollView 内?

转载 作者:可可西里 更新时间:2023-11-01 03:47:57 25 4
gpt4 key购买 nike

我正在尝试创建某种时间轴 View ,就像在视频编辑器中一样:连续的媒体元素,它们是 UIView 的。我可以使用 UIScrollView 触摸事件(如 touchesBegantouchesMoved)成功地将这些 View 拖动到 ScrollView 的当前可见部分。一旦将 subview 拖动到 ScrollView 边缘之一,我想滚动 ScrollView 。我现在能想到的最好的方法是创建一个计时器,当用户用手指靠近 ScrollView 边缘按住 subview 时,它将 ScrollView 。

这里有很多关于同一主题的问题,但我找不到涉及滚动的问题。

有什么好的方法吗?我应该改用手势识别器吗?

提前谢谢你。

最佳答案

实际上你想要的是一个定时事件。一旦用户位于 ScrollView 的边缘,您就会启动一个计时器,该计时器会定期增加 contentOffset。如果您不喜欢您的动画结果(我猜您正在使用 setContentOffset:animated:?),只需尝试另一个动画时间和距离。我想您必须尝试一些不同的设置。我首先尝试的是一次 1px。也许每 0.3 秒一次?

如果这不起作用,您也可以尝试另一个“极端”。启动单个动画,当用户到达边缘时,动画 contentOffset 直到 contentSize 结束。但是在很长的时间跨度内,移动速度很慢。如果用户停止拖动或移出边缘,则在当前位置停止动画。这甚至是一个没有计时器的解决方案,因为动画本身就是您的计时器。

关于ios - 如何在边缘附近滚动的情况下将 View 拖动到 UIScrollView 内?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9761383/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com