Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios inputAccessoryView上显示的自定义UIInputView不考虑iPhone X上的高度约束_Ios_Swift_Iphone X - Fatal编程技术网

Ios inputAccessoryView上显示的自定义UIInputView不考虑iPhone X上的高度约束

Ios inputAccessoryView上显示的自定义UIInputView不考虑iPhone X上的高度约束,ios,swift,iphone-x,Ios,Swift,Iphone X,我正在构建一个聊天应用程序,在屏幕底部有一个浮动文本输入字段(类似于iMessage应用程序) 我通过创建一个ChatInputViewController实现了这一点,它是UIInputViewController的一个子类,包含一个UIInputView和一个用于输入的textView 在我的主ChatViewController中,我随后重写以下属性以显示我的自定义UIInputViewController: class ChatViewController: UIViewControl

我正在构建一个聊天应用程序,在屏幕底部有一个浮动文本输入字段(类似于iMessage应用程序)

我通过创建一个
ChatInputViewController
实现了这一点,它是
UIInputViewController
的一个子类,包含一个
UIInputView
和一个用于输入的
textView

在我的主
ChatViewController
中,我随后重写以下属性以显示我的自定义
UIInputViewController

class ChatViewController: UIViewController {

    override var inputAccessoryViewController: UIInputViewController? {
        return chatInputViewController
    }

    override var canBecomeFirstResponder: Bool {
        return true
    }

    ...

}
问题是:我还有一个自定义的输入视图,当用户点击帮助图标时会显示该视图。自定义输入视图使用“自动布局”进行布局,并将显式高度约束设置为等于键盘的高度。显示时,此视图在键盘就位的情况下交换。我通过设置
textView
inputView
属性,然后调用
textView.reloadInputViews()
来实现这一点。这在除iPhone X之外的所有设备上都能正常工作,而在iPhone X中,inputView被扩展以覆盖整个屏幕

控制台中没有记录自动布局约束。
ChatInputViewController
HelpInputViewController
在其
inputView
上启用了
allowSelfSizing
,并禁用了
TranslatesAutoResizezingMaskintoConstraints
。任何想法都将不胜感激