以编程方式将 UITextField 设置为 FirstResponder 时,会导致文本编辑出现一些奇怪的操作

2024-06-23

我有一个带有自定义键盘的 UITextField,基本上就像一个计算器。我希望默认情况下显示我的键盘,所以我使用了[self.topInputTextField becomeFirstResponder]; in viewDidLoad,我认为这是非常常见的用法。但是,它会在我的文本字段上导致一些非常奇怪的操作。

当我将文本字段设置为 viewDidLoad 中的第一响应者时,每次完成编辑后,文本都会跳转,当我单击另一个文本字段并再次单击第一个文本字段时,第一个文本字段中的文本有时会移动下降并消失,但有时不会。我觉得很难描述,所以我给它录了一张GIF图。

原因是我确信[self.topInputTextField becomeFirstResponder];导致问题的是,当我注释掉该行代码时,一切都恢复正常。这是我注释掉该行后的 GIF:

这对我来说很奇怪,在 2 个 GIF 文件之间,我所做的唯一更改就是注释掉那行代码。我在SE上找不到任何解决方案。任何想法将不胜感激。

Edit:另一件事是我尝试更改字体和字体大小,它们都有类似的奇怪行为。

*编辑2:** 这是我设置文本字段的方式,我没有做任何花哨的事情


尝试调用键盘viewDidAppear,此方法在之后被调用viewDidLoad。我认为这是因为您应该只在已向用户显示的加载视图上调用键盘,因此如果您在视图实际出现之前调用它,则会导致意外行为。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以编程方式将 UITextField 设置为 FirstResponder 时,会导致文本编辑出现一些奇怪的操作 的相关文章

  • Swift 中可选的闭包属性

    如何在 Swift 中将可选闭包声明为属性 我正在使用这段代码 var respondToButton sender UIButton gt Bool 但编译器抱怨该属性未在初始化程序结束时初始化 我相信我可以通过将 var 声明为可选来解
  • “弱链接”框架是什么意思?

    在 Xcode 中 我可以将框架设置为 可选 而不是 必需 这意味着该框架是弱链接的 这是否意味着框架仅在导入到某个地方时才包含在捆绑包中 我想弱链接一些使用的调试框架私有API 并且我不希望它们出现在 App Store 版本中 重要的提
  • 在 UIImage 上添加点击手势

    我正在尝试制作可点击的 UIImage 用户可以点击它然后它就会动画 我正在使用 UIScrollVIew 这就是为什么我使用 UITapGesture 而不是 TouchBegan 而且 UIGestureRecognizer 似乎与 U
  • 如何使用 Mapkit 在 iPhone 中显示离线地图

    如何使用mapkit在iPhone中显示离线地图 如果我使用静态图像 那么我如何获取当前位置并在其上放置针 任何人有想法请提出一些解决方案 谢谢 试试这个帖子强制 MapKit 仅使用缓存的地图图块 以编程方式禁用网络 https stac
  • iOS 7 UIBarButtonItem 字体在点击时发生变化

    我正在尝试改变我的UIBarButtonItem字体 ViewController 加载时看起来不错 但是 如果我点击栏按钮 或者向右滑动 就像移动到上一个 ViewController 但然后拉回到当前的 ViewController 字
  • 解析 URL 字符串以获取键值的最佳方法?

    我需要解析一个 URL 字符串 如下所示 ad eurl http www youtube com video 4bL4FI1Gz6s hl it IT iv logging level 3 ad flags 0 endscreen mod
  • 以编程方式在 Swift 中实现尾随和前导约束 (NSLayoutConstraints)

    我正在从 xib 添加一个视图到我的 ViewController 中 然后我将其限制真正适合它 override func viewDidAppear animated Bool super viewDidAppear animated
  • Xcode 8 - 丢失文件警告

    自从使用 Swift 2 3 升级到 Xcode 8 我有几个丢失文件的警告 它们都与我正在使用的 pod 有关 丢失的文件是 xcscheme cpp xcuserstate swift 显示丢失文件的 pod 是 领域 38 43 Te
  • 我删除了 Xcode 中的本地化,然后无法添加任何本地化

    我错误地从项目信息中删除了项目的本地化信息 故事板和相关语言都被删除 我从以前的文件中取回了故事板 但是当我想添加新的本地化时 会弹出一个窗口并要求我 选择文件和参考语言来创建英语本地化 并且根本没有资源文件 如何添加回本地化内容 添加回本
  • 接受 iOS 应用付款吗?

    在ios应用程序上实现支付系统可以吗 我想制作一个应用程序 可以浏览我的电子商务网站上的产品 然后让人们在我的应用程序上购买产品 我问这个问题是因为我听说它违反了苹果的政策 这显然取决于所出售的商品 当然 最终的答案只能从你的律师对苹果协议
  • 自定义 URL 方案

    如何处理自定义 URL 方案以允许一个应用程序定向到另一个应用程序 例如instagram user username someusername它通过用户名将用户直接引导至用户个人资料 我需要创建类似的东西 我已经结账了applicatio
  • 如何在 AVCaptureVideoPreviewLayer 上添加叠加层?

    我正在使用 Swift 构建一个 iOS 应用程序 它需要二维码扫描仪功能 我已经使用 AVFoundation 实现了 QR 码扫描仪 现在我的捕获屏幕看起来与视频录制屏幕相同 即AVCaptureVideoPreviewLayer显示相
  • UIWebview JS 性能比 iOS 6/7 上的移动 safari 慢吗?

    我们最近使用 iOS 应用程序中的大量 JavaScript 库测试了一些 HTML5 内容 该应用程序旨在在 UIWebview 中加载这些内容 本次测试使用了 iOS 6 我的团队没有观察到移动 Safari 浏览器出现任何明显的性能问
  • UniversalLink 不适用于 iOS 14 设备,但在模拟器上运行良好

    以下解决方案可以在模拟器上支持universalLink 我有一个支持 UniversalLink 的应用程序 用户单击网站中支持的链接 将导航到应用程序中的功能 但它无法在 iOS 14 beta 4 上运行 它不是打开应用程序 而是打开
  • ios - 安排无限数量的本地通知

    我有一个应用程序 允许用户创建重复事件 每一个事件在一天中的特定时间可能有也可能没有提醒 警报 如果有的话 应用程序会发送一个本地通知在一天中的那个时候 事件存储在CoreData Event name Go to London date
  • 钥匙串组访问权限可在我的现有应用程序之间共享数据

    我在 AppStore 上有很多 iOS 应用程序 现在 对于下一个版本的应用程序 我想为每个应用程序保留一段数据以在 KeyChain 中共享 据我所知 我需要在 Apple 的 KeychainItemWrapper 类中提供相同的 K
  • YouTube 嵌入 AirPlay UIWebView

    我正在开发一个视频应用程序 其中包含来自不同来源的大量视频 应用程序中的选项之一必须是通过电视上的 Airplay 播放视频 为了在我的应用程序中显示 YouTube 视频 我使用 YTPlayerView 它是 YouTube API 的
  • 在 SpriteKit 中,touchesBegan 是否与 SKScene 更新方法在同一线程中运行?

    在 Apple 文档中高级场景处理 https developer apple com library ios documentation GraphicsAnimation Conceptual SpriteKit PG Actions
  • 如何组合两个可变数组?

    我有一个 iPhone 应用程序 我试图在其中添加两个可变数组 NSMutableArray dataArray NSMutableArray alloc init NSMutableArray dataArray1 NSMutableAr
  • Ionic 3 Deeplinking - 从 URL 启动应用程序

    我正在使用 Ionic 开发一个跨平台应用程序 当尝试实现深度链接时 我安装了一个名为 Ionic Native 插件深层链接 我运行了这些命令 ionic cordova plugin add ionic plugin deeplinks

随机推荐