iOS 27: Continuous Keyboard Flickering When Editing TextFields in the Last Table View Cells

Đang mở
#2,185 1 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
45/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
ios, swift
Lĩnh vực
mobile

Hướng nghiên cứu

Start by locating the code that calls adjustPosition() and changes the table view’s content insets, then trace how IQKeyboardToolbarManager handles embedded UITableViewController instances. Reproduce the steps on iOS 27 with the toolbar manager enabled and compare the behavior on an earlier iOS version. Done means the last-cell text field stays stable without repeated position or inset adjustments.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Describe the bug

When a UITableViewController is embedded as a child of a UIViewController, the keyboard continuously flickers when editing a UITextField in the last few table view cells on iOS 27.

This issue occurs when IQKeyboardToolbarManager is enabled using the following configuration:

IQKeyboardToolbarManager.shared.isEnabled = true

Initially, tapping a text field in one of the last four cells opens the keyboard and works as expected. However, while the keyboard remains open, scrolling further down and tapping the text field in the last cell causes the keyboard and table view position to flicker continuously.

The issue is reproducible on iOS 27 and does not occur on earlier iOS versions.

The debug logs show repeated calls to adjustPosition() with alternating content inset values and upward/downward movements, which may be related to the issue.

To Reproduce

Steps to reproduce the behavior:

  1. Create a UIViewController that contains a UITableViewController as a child view controller.

  2. Add multiple table view cells containing UITextField instances, ensuring that at least the last four cells contain text fields.

  3. Enable IQKeyboardToolbarManager using the following configuration:

    IQKeyboardToolbarManager.shared.isEnabled = true
    
  4. Run the application on an iOS 27 simulator or device with IQKeyboardManagerSwift enabled.

  5. Scroll to the bottom of the table view and tap a text field in one of the last four cells. Verify that the keyboard opens and works as expected.

  6. Without dismissing the keyboard, scroll further down to the last cell and tap its text field.

  7. Observe that the keyboard and table view position continuously flicker instead of remaining stable.

Expected behavior

The keyboard should open normally, and IQKeyboardManagerSwift should adjust the table view's content offset and insets correctly to keep the active text field visible.

Enabling IQKeyboardToolbarManager should not cause continuous keyboard flickering or repeated, conflicting adjustments to the table view's position.

Screenshots

The attached screenshot shows repeated adjustPosition() calls in the debug console with alternating content inset values:

  • Old bottom content inset: 338.0
  • New bottom content inset: 396.0

The logs also show repeated upward and downward adjustments.

Video recordings and debug logs:

Versions

Xcode: Version 27.1
Mac OS: Version 27.0.1
Simulator/Device: iOS 27.0
Simulator/Device Name: iPhone 17
Library Version: IQKeyboardManagerSwift 8.0.3

Additional context

  • The issue is reproducible on iOS 27.0.
  • The same behavior does not occur on earlier iOS versions.
  • The issue occurs when the UITableViewController is embedded as a child of another UIViewController.
  • The issue occurs when IQKeyboardToolbarManager.shared.isEnabled = true.
  • The problem appears when editing text fields near the bottom of the table view while the keyboard is already open.
  • The debug logs show repeated adjustPosition() executions and alternating content inset values while the keyboard is active.

Please investigate whether changes in iOS 27 keyboard or scroll view behavior are causing IQKeyboardManagerSwift to repeatedly adjust the table view's position and content insets when IQKeyboardToolbarManager is enabled.

Image
Ngôn ngữ chính
Swift
Star
16.6k
Fork
2.4k
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của hackiftekhar/IQKeyboardManager

Tất cả issue của hackiftekhar/IQKeyboardManager

Issue tương tự

Thêm issue về Swift

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.