ios - 如何让视图跟随我的手指移动?方向是从左到右
问题描述
我想实现一个类似于滑块的功能。例如,按钮跟随手指从左向右移动。像这样:
我应该使用 UISwipeGestureRecognizer。还是 UIPanGestureRecognizer?我使用了滑动手势但我不知道如何更新框架。
var swipeRight = UISwipeGestureRecognizer(target: self, action:
#selector(self.respondToSwipeGesture(sender:)))
swipeView.isUserInteractionEnabled = true
swipeView.addGestureRecognizer(swipeRight)
解决方案
您可以将平移手势添加到要拖动的视图中。拖动的方法如下所示:
func draggedView(_ sender: UIPanGestureRecognizer) {
let translation = sender.translation(in: self.view)
draggableView.center = CGPoint(x: draggableView.center.x + translation.x, y:
draggableView.center.y)
sender.setTranslation(CGPoint.zero, in: self.view)
}
您可以使用平移 x 或 y,具体取决于您要水平或垂直移动视图,或两者兼而有之。
推荐阅读
- python - 安装 opencv-contrib-python 后我找不到 cv2.ximgproc
- php - 在 PHP 中覆盖文件外部的变量
- sql - 为什么在连接后返回比预期更多的行?
- c# - 如何使用 POST 方法和标头重定向
- google-apps-script - Google表格:将具有多种字体样式(颜色)的单元格复制到另一个保持样式的单元格
- javascript - 如何将搜索结果的数量限制为 10,并将每个项目添加到删除的数组中?
- android - 如何实时更新 value recyclerview 元素?
- spring - BindingResult 对象保持为空
- javascript - 如何将objectid存储在json文件中并获取查询并在mongodb中执行
- node.js - Sagemaker模型训练中的机器学习问题