菜鸟教程小白 发表于 2022-12-11 17:15:39

ios - UICollectionViewController 无需长按即可重新排序


                                            <p><p>使用 UICollectionViewController 我可以轻松启用重新排序。但要真正重新排序,我必须长按单元格才能开始重新排序状态。 (请注意,从圆圈到单元格实际移动的延迟。)
<a href="/image/YJIip.gif" rel="noreferrer noopener nofollow"><img src="/image/YJIip.gif" alt="long press begins dragging"/></a> </p>

<p>由于我以类似跳板的方式使用编辑模式,我需要在触摸和按住时立即开始重新排序状态,而不是在长按阈值之后。</p>

<p>知道如何做到这一点吗? - 或者至少如何处理它?<​​/p>

<p>是否可以在单元格触摸时手动触发长按事件?如果是,我该怎么做?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>如果有人应该过来,这就是我的解决方法。</p>

<p>实际上跳过长按并实现 UIPanGestureRecognizer 相对容易。只需执行 Begin 和 Ended 更改,并移动当前项目的索引。
当您想在折叠上方或下方移动时,就会出现问题。然后平移手势识别器的移动开始与 uicollectionview 滚动冲突。</p>

<p>我通过为每个单元格添加一个拖动句柄,并为每个拖动句柄添加一个 UIPanGestureRecognizer 来解决它,在 VC 中回调相同的方法。</p>

<p>这使您可以通过在项目上滑动来滚动。如果您拖动每个单元格上的 handle ,您就会开始重新排序。</p>

<p>我仍在考虑这是不是最明显的可用性,但它确实有效。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - UICollectionViewController 无需长按即可重新排序,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/38942862/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/38942862/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - UICollectionViewController 无需长按即可重新排序