首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在磁带上选择UITableView行,但可以在长磁带上选择

无法在磁带上选择UITableView行,但可以在长磁带上选择
EN

Stack Overflow用户
提问于 2021-05-05 10:10:43
回答 2查看 25关注 0票数 0

我有一个iOS应用程序,它有以下流程:

带有UITableView ->的UITabView -> TabView选择一行-> UITabView (全屏模式)带有UIViewController和UITableView的-> UITabView

UIViewController中的UITableView行不允许我一次点击选择它们。如果A)两指轻敲或B)长按(3D Force Touch?),我可以选择它们。在这一排。然后,该行触发didSelectRowAt。否则什么都不会发生。

我试过在UITableView上设置这些

代码语言:javascript
复制
self.catalogItemsTableView.allowsSelection = true
self.catalogItemsTableView.selectionFollowsFocus = true
self.catalogItemsTableView.allowsSelectionDuringEditing = true

但他们并没有改变任何事情。这是视图的样子。是不是因为UITableView在全屏模式的内部?我正在用下面的代码加载'Modal‘视图:

代码语言:javascript
复制
let orderEntryViewController = OrderEntryViewController(order: order, parentVC: self.parentVC!)
orderEntryViewController.order = order
orderEntryViewController.modalPresentationStyle = .fullScreen
                
self.parentVC!.present(orderEntryViewController, animated: true, completion: nil)

EN

回答 2

Stack Overflow用户

发布于 2021-05-05 10:27:01

我在使用表格视图点击的视图中有这个。我把它放在适当的位置是为了取消键盘

代码语言:javascript
复制
let tap = UITapGestureRecognizer(target: self, action: #selector(UIInputViewController.dismissKeyboard))

view.addGestureRecognizer(tap)

删除此选项可使UITableView分路器再次正常工作。

票数 0
EN

Stack Overflow用户

发布于 2021-05-05 14:24:57

您还可以实现手势识别器委托,然后检查触摸是否在表视图上。

代码语言:javascript
复制
func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldReceiveTouch touch: UITouch) -> Bool {
    
    if touch.view?.isDescendantOfView(self.catalogItemsTableView) == true {
        return false
    }
    return true
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67394303

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档