項目開發(fā)中外永,我們在跟蹤線上bugly時崎脉,經(jīng)常會遇到【UICompatibilityInputViewController 】willappear時崩潰的問題(如下),但我們搜索整個項目后發(fā)現(xiàn)伯顶,其中沒有這個控制器囚灼,那UICompatibilityInputViewController到底是什么呢骆膝?
其實他是我們彈起鍵盤的一部分。使用過自定義鍵盤的小伙伴肯定知道灶体,需要對window下的UITextEffectsWindow進行操作阅签,展開后層級如下:
具體層級是,下方箭頭標記的是UITextEffectsWindow
再下一層是:UITextEffectsWindow上的UIInputWindowController
再下一層是:UIInputWindowController上的UIInputSetContainerView
在下一層是:UIInputSetContainerView上的UIIputSetHostView
再下一層便是我們要找的UIIputSetHostView上的UICompatibilityInputViewController
搞懂了視圖層級位置蝎抽,就知道問題出在哪了政钟。