我已经编写了自己的函数,用于在键盘出现时向上滚动文本字段.为了通过轻敲文本字段来取消键盘,我创建了一个UITapGestureRecognizer,它负责在轻敲文本字段时辞go 文本字段上的First Responder.

现在,我还为文本字段创建了一个autocomplete,在文本字段下方创建一个UITableView,并在用户输入文本时用项目填充它.

但是,在自动完成表中 Select 一个条目时,不会调用didSelectRowAtIndexPath.取而代之的是,轻拍手势识别器似乎接到了电话,只是让第一响应者辞职.

我猜有一些方法可以告诉轻拍手势识别器不断向下传递轻拍信息到UITableView,但我不知道是什么.任何帮助都将不胜感激.

推荐答案

好的,经过手势识别器文档的搜索,终于找到了.

解决方案是实施UIGestureRecognizerDelegate并添加以下内容:

#pragma mark UIGestureRecognizerDelegate methods
    
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
  if ([touch.view isDescendantOfView:autocompleteTableView]) {
            
    // Don't let selections of auto-complete entries fire the 
    // gesture recognizer
    return NO;
  }
        
  return YES;
}

这就解决了这件事.希望这也能帮助其他人.

Ios相关问答推荐

ITMS—91053:Flutter Project中缺少API声明

设置堆栈视图的所有属性

如何使视图完全适合屏幕,而不会在旋转时溢出手机屏幕的边界?

如何修复使用EFCore和SQLite的.Net MAUI iOS应用程序上的当前应用程序不支持NullabilityInfoContext?

如何使用超薄material ,但没有浅色/填充?

如何解释在SwiftUI视图中观察到持续的数据更改

SWIFT用户界面检测手势的开始和结束

当操作修改查看条件时,按钮不重复

许多文本字段的性能问题

Swift中是否有一种方法可以为可选属性创建一个计算(computed)属性

iOS上从谷歌云存储API不断收到网络连接已丢失的错误信息

react 本机 |错误:无法解析 node_modules/react-native/index.js 中的模块

占位符文本未显示在 TextEditor 上

如何从 Locale Swift 获取货币符号

无法为 Flutter 项目构建 ipa [CocoaPods 找不到 pod "GoogleAppMeasurement" 的兼容版本:]

try 在 iOS 中分发 Flutter 应用程序时出现Invalid Provisioning Profile Signature错误

如何在 Swift 3 中根据 UIImage 的大小/比率调整 UIImageView 的大小?

如何将 iPhone OSStatus 代码转换为有用的东西?

更新字段时,UITextField值已更改未触发

我的应用程序因使用广告支持框架而被拒绝.哪个图书馆负责?