YPDrawSignatureView - 绘制签名时滚动表格

时间:2016-03-06 23:09:38

标签: swift scroll cell

所以我想要一个表格单元格中的签名视图。显然,每当有人试图在单元格中绘图时,表格会滚动。

如果用户在签名框中书写,我将如何停止滚动?

3 个答案:

答案 0 :(得分:3)

我找到了更好的解决方案,而不是按钮。在viewController中实现委托方法,

class mainVC: UIViewController,YPSignatureDelegate {

将签名视图的委托设置为此视图控制器

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
            let cell = tableView.dequeueReusableCell(withIdentifier: "SignatureCell", for: indexPath) as! SignatureCell
            cell.signatureView.delegate = self
            return cell
}

然后添加这些代码。这是YPSignature的两位代表。添加主视图控制器

    func didStart() {
        tableView.isScrollEnabled = false
    }
    // didFinish() is called rigth after the last touch of a gesture is registered in the view.
    // Can be used to enabe scrolling in a scroll view if it has previous been disabled.
    func didFinish() {
        tableView.isScrollEnabled = true
    }

答案 1 :(得分:1)

我会用一个覆盖单元格的按钮解决这个问题,当用户点击它时,单元格会显示YPDrawSignatureView。在显示签名视图之前,禁用滚动:

tableView.scrollEnabled = false

稍后当您保存签名时,通过将scrollEnabled设置为 true 来再次启用滚动。

答案 2 :(得分:1)

我添加了一个uitableview和自定义单元格。其中一个自定义单元格在signatureView顶部包含一个按钮(例如addSignatureButton)。

我使用委托方法在uitableviewcell和uiviewcontroller之间进行通信。将委托添加到UITableViewCell以通知是否轻触addSignatureButton。点击后,将隐藏addSignatureButton,可以看到signatureView并禁用tableview的滚动。当用户完成添加签名时,隐藏了signatureView,可以看到addSignatureButton并启用了tableview滚动。

https://github.com/alvinvgeorge/DrawSignatureOnTableViewCell