gpt4 book ai didi

ios - Swift canEditRowAtIndexPath 在 UIPageViewController EZSwipeViewController 中不起作用

转载 作者:行者123 更新时间:2023-11-30 12:42:08 25 4
gpt4 key购买 nike

我有以下场景,需要帮助解决该场景中的棘手情况

  1. 有一个 Xcode 项目,正在使用 EzSwipeController目前用于在三个 View Controller 之间滑动(分页效果)。

  2. 在我的第一个 ViewController 中(这个 viewController 是根据我的要求从我的自定义动态框架中获取的)-

获取 ViewController 的代码:

    userProfile.createProfileUI(userSession!) { result in
switch result {
case let .Success(profileViewController):

myDetailsVC = profileViewController //myDetailsVc is passed to EZSwipControllerDataSource array

default:
break
}
}
  • 另外两个 ViewController 在我的项目 Storyboard 中
  • 问题 -

    在第一个 ViewController 中,有一个为几个单元格(电话号码)启用了 canEditRowAtIndexPath 的 tableView。

    因此,当我尝试滑动行时,EZSwipeController 首先响应,并且因此,我无法编辑该行。

    这是正在发生的事情 - http://recordit.co/SOJgdeYchP

    这是应该发生的情况 - http://recordit.co/EBPSbjH31q

    我该如何处理这个问题?当我尝试编辑行时,有没有办法可以覆盖默认的滑动 Controller 操作?

    请帮忙!

    最佳答案

    将滑动手势识别器附加到层次结构中的父级。

    如果您使用的是 UITableViewController,请将其替换为内部包含 UITableView 的 UIViewController。然后只需将手势识别器拖到 Storyboard 中的 View Controller 上,它就会附加到 UIViewController 的内容 View 而不是 UITableView。

    尽管归根结底,这本质上是一种有缺陷的方法,因为只有当页面上没有任何包含滑动手势的元素时,在应用程序中滑动才能翻页。如果这样做,即使您编写了一种解决方法来使 View Controller (在本例中为 TableView 单元格)中的元素的手势识别器触发,而不是页面翻转滑动手势,也会造成不一致的用户体验。 p>

    我的建议:不要将 TableView 完全用于此类表单。除了上述机械用户体验问题之外,从用户感知的角度来看,没有任何东西在视觉上表明这是一个表格 View 而不仅仅是一个 ScrollView ,因此没有任何东西向用户表明滑动操作(删除)可用。请改用 ScrollView ,并采用不同的删除方法(始终可见的删除按钮、仅在用户点击某处“编辑”后才可见的删除按钮等)。

    关于ios - Swift canEditRowAtIndexPath 在 UIPageViewController EZSwipeViewController 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42106560/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com