UITableViewCell - 拖动整行移动?

时间:2018-04-23 20:46:51

标签: ios swift uitableview

我正在尝试使用UITableViewController并允许用户通过拖动行来重新组织我的数据。这工作正常,但用户必须点击单元格右侧四分之一处相对较小的UITableViewCellReorderControl来拖动该行。

以下是一个例子:

dragging works

据我所知,无法通过UITableViewCellReorderControl获取UITableViewDelegate或访问其大小或行为。有没有办法自定义拖动行为,以便您可以拖动单元格上的任何位置来上移或下移?

1 个答案:

答案 0 :(得分:0)

只需将reorderControl扩展到单元格的大小即可。

extension UITableViewCell {
  var reoderControl: UIView? {
      for view in self.subviews {
          if view.description.contains("UITableViewCellReorderControl") {
              return view
          }
      }
      return nil
  }
}
class Cell: UITableViewCell {
     override func layoutSubviews() {
         super.layoutSubviews()
         reoderControl?.frame = bounds
     }
}