ios - 可定制的表格 View 单元格滑动以停止完全展开?

标签 ios swift uitableview swipe-gesture

有什么方法可以轻松实现下图中的结果(也许通过使用 MGSwipeTableCell 或 SwipeCellKit 或您知道的任何其他 pod)。我很确定使用默认的 iOS UIKit 无法做到这一点。

这里有两件事需要考虑:

1) TableView 单元格滑动操作应该是完全可定制的(将 UIView 放在那里,这样您就可以在 UIView 中放置任何您想要的内容),或者至少,使用 1 个然后 5 个按钮更接近屏幕截图(因此,小滑动和全滑动有不同的滑动操作)?

2)表格 View 单元格滑动操作,必须首先(小滑动)仅显示“警报”图标,如第一张图片所示,如果您单击它,或者进一步滑动,它应该像第二张图片所示,最重要的是,保持这样,不会自动取消滑动(除了等待用户输入、选择另一个单元格或其中的任何按钮之外,无需执行任何操作)。

我并不是要求一个完整的解决方案,我只是想知道它是否可能并且相对容易做到,所以我不会浪费几周的时间来尝试实现这一目标,但最终发现它不是有可能。

SmallSwipe

FullSwipeOrClick

最佳答案

我认为在 tableCell 中,您可以将 View 添加到 contentView,这将填充所有单元格并通过 UIPanGestureRecognizer 拖动它。您的操作 View 将位于可 ScrollView 下。像这样的事情:

class SwipableTableViewCell: UITableViewCell {
    @IBOutlet var actionView: UIView // under mainView
    @IBOutlet var mainView: UIView // take whole place of contentView
    @IBOutlet var panGesture: UIPanGestureRecognizer

    @IBAction func panAction(_ sender: UIPanGestureRecognizer) {
        // drag main view left or right and logic of auto swiping 
    }
}

关于ios - 可定制的表格 View 单元格滑动以停止完全展开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52649472/

相关文章:

ios - 将本地核心数据数据库与 Web 服务同步

uitableview - sizeWithFont :constrainedToSize:lineBreakMode: deprecated in iOS7

ios - 第二次点击单元格时如何折叠展开的单元格?

javascript - 触摸设备上的 CSS vh 单元问题

ios - 创建宽度等于 TableView 分隔符宽度的 View

ios - 如何将不规则形状存储为 UIImage?

iOS:在后台运行应用程序并进行位置更新

objective-c - 在 navigationController 堆栈上多级传递委托(delegate)方法

ios - 自动调整(动态高度)表格 View 单元格的问题

ios - 如果我快速滚动 tableView,则返回 nil