2024-08-30

Swift 不通过注册通知获取键盘高度

func getVisiableKeyboardHeight() -> CGFloat {
    
    var keyboardWindow : UIWindow?
    for window : UIWindow in UIApplication.shared.windows {
        
        if !window.isKind(of: UIWindow.self) {
            keyboardWindow = window
        }
    }
    if keyboardWindow == nil { return 0 }
    
    var inputView : UIView?
    for testWindow : UIView in keyboardWindow!.subviews {

        if testWindow.isKind(of: NSClassFromString("UIInputSetContainerView")!) {

            inputView = testWindow;
            break;
        }
    }
    if inputView == nil { return 0 }
    
    for possibleKeyboard : UIView  in inputView!.subviews {

        if possibleKeyboard.isKind(of: NSClassFromString("UIInputSetHostView")!) || possibleKeyboard.isKind(of: NSClassFromString("UIKeyboard")!) {
            
            return possibleKeyboard.bounds.size.height;
        }
    }
    
    return 0
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 《关于领导强调迟到早退现象的思考》 在工作场所中,领导的管理方式和关注点往往对团队的氛围和工作效率产生着深远的影响...
    桃语兮阅读 58评论 0 1
  • 轻松解锁销售利润!使用淘宝商品关键词搜索API接口 随着互联网技术的迅猛发展,电商平台在人们生活中的地位越来越重要...
    luck626Y阅读 46评论 0 0
  • 英文早读第45篇,选自巴菲特年度信,友才翻译。 A good friend, whose inclination ...
    友才927阅读 52评论 0 0
  • 五十五、美国爆发经济危机 中国的历史课本上反复说:“帝国主义是资本主义的最高阶段,是垂死挣扎的资本主义”。 政治课...
    Chuvigor阅读 52评论 0 0
  • 2024.8.29周四 上午还是要带宝去学校,带上我的桌垫和键盘,争取早点起来,下午就不去了。早起吃点水果然后洗澡...
    偏偏喜欢你sky阅读 64评论 0 1