Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

iPadOS 26.x floating numeric keyboard crash may be related to default AutoToolbar and _UIRemoteKeyboardPlaceholderView

Aperta
#2,181 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Da chiarire
Stato di attività
Tranquilla
Stack tecnologico
swift
Ambito
mobile-dev

Direzione di ricerca

No source file, test, or reproducible demo is identified. Begin by investigating the AutoToolbar state during the reported phone-pad-to-verification-field transition on iPadOS 26.x, using the UIKit constraint exception and supplied stack trace as the starting evidence. Done means the intermittent crash is reproduced and its relationship to IQKeyboardManager is established or ruled out.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Describe the bug

We observed an intermittent crash on iPadOS 26.x when using IQKeyboardManager 6.5.19 with numeric/phone input fields.

The crash happens while switching from a phone number field to a verification code field. The exception is thrown by UIKit constraint activation:

NSGenericException
Unable to activate constraint with anchors <UIView.top> and <_UIRemoteKeyboardPlaceholderView.bottom> because they have no common ancestor.

This seems related to the iPad floating numeric keyboard / keyboard placeholder view. In one user video, the keyboard was partially dismissed while the IQKeyboardManager toolbar was still visible. If the user tapped the toolbar Done button first, the login flow could continue normally.

We cannot prove IQKeyboardManager is the root cause, but the issue appears to be triggered or amplified when IQKeyboardManager's AutoToolbar is involved.

To Reproduce

The issue is intermittent and we have not been able to reproduce it consistently on our own devices.

Observed user flow:

  1. Open a login/register screen on iPad.
  2. Tap a phone number text field using UIKeyboardTypePhonePad / numeric keyboard.
  3. Tap "Send verification code".
  4. Tap the verification code input field.
  5. App crashes with the UIKit constraint exception.

Observed condition:

  • iPad floating numeric keyboard is involved.
  • IQKeyboardManager AutoToolbar may remain visible while the keyboard is partially dismissed.
  • Tapping the IQKeyboardManager toolbar Done button before continuing avoids the crash in the user video.

Expected behavior

Switching between numeric text fields should not crash. IQKeyboardManager should not leave UIKit keyboard placeholder/toolbar state in a hierarchy that can trigger a constraint activation exception.

Screenshots

We can provide crash screenshots/log screenshots if needed.

Demo Project

No minimal demo project yet. The issue is intermittent and currently only reproduced in production user reports.

Versions

Xcode: 26.3
iOS/iPadOS: iPadOS 26.3 / 26.5
Device: iPad mini 6th generation, iPad models on iPadOS 26.x
Library Version: IQKeyboardManager 6.5.19

Additional context

Crash signature:

#44002 NSGenericException
Unable to activate constraint with anchors <NSLayoutYAxisAnchor:0x14e27cd40 "UIView:0x14e34ddc0.top"> and <NSLayoutYAxisAnchor:0x14eda0440 "_UIRemoteKeyboardPlaceholderView:0x14ed7ca00.bottom"> because they have no common ancestor. Does the constraint or its anchors reference items in different view hierarchies? That's illegal.

CoreFoundation __exceptionPreprocess

0 CoreFoundation
__exceptionPreprocess + 164
1 libobjc.A.dylib
objc_exception_throw + 88
2 CoreAutoLayout
0x00000001e726a000 + 9896
3 CoreAutoLayout
0x00000001e726a000 + 38376
4 CoreAutoLayout
0x00000001e726a000 + 14924
5 CoreAutoLayout
0x00000001e726a000 + 35908
6 UIKitCore
-[UIInputWindowControllerHostingItem updateViewConstraints] + 8268
7 UIKitCore
-[UIInputWindowController updateSupportsDockViewController] + 300
8 UIKitCore
-[UIKeyboardImpl didMoveToWindow] + 140
9 UIKitCore
-[UIView(Internal) _didMoveFromWindow:toWindow:] + 1936
10 UIKitCore
-[UIView(Internal) _didMoveFromWindow:toWindow:] + 716
11 UIKitCore
-[UIView(Internal) _didMoveFromWindow:toWindow:] + 716
12 UIKitCore
__45-[UIView(Hierarchy) _postMovedFromSuperview:]_block_invoke + 132
13 CoreAutoLayout
0x00000001e726a000 + 14924
14 UIKitCore
-[UIView _postMovedFromSuperview:] + 528
15 UIKitCore
-[UIView(Internal) _addSubview:positioned:relativeTo:] + 2324
16 UIKitCore
-[UIInputWindowControllerHostingItem setInputView:] + 176
17 UIKitCore
-[UIInputWindowControllerHosting setInputSetView:forType:] + 260
18 UIKitCore
-[UIInputWindowController changeToInputViewSet:] + 976
19 UIKitCore
__43-[UIInputWindowController setInputViewSet:]_block_invoke + 44

Lingua principale
Swift
Stelle
16.6k
Fork
2.4k
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di hackiftekhar/IQKeyboardManager

Tutte le issue di hackiftekhar/IQKeyboardManager

Issue simili

Altre issue su Swift

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.