iOS 获取屏幕最上层window以及响应者
生活随笔
收集整理的這篇文章主要介紹了
iOS 获取屏幕最上层window以及响应者
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 通過UIApplication獲取
UIWindow *window = [UIApplication sharedApplication].keyWindow; 或者 UIWindow *window = [[UIApplication sharedApplication].windows lastObject]; 復制代碼2. 比較嚴謹的獲取方法:
- (UIWindow *)lastWindow{NSArray *windows = [UIApplication sharedApplication].windows;for (UIWindow *window in [windows reverseObjectEnumerator]) {if ([window isKindOfClass:[UIWindow class]] && CGRectEqualToRect(window.bounds, [UIScreen mainScreen].bounds)) {return window;}}return [UIApplication sharedApplication].keyWindow; } 復制代碼3. 查找響應者
// 新建一個UIView的類目,把這個方法放進去,以后就可以直接通過view.findResponderViewController來獲取視圖的控制器了。 - (UIViewController *)findResponderViewController{UIResponder *next = self.nextResponder;do {if ([next isKindOfClass:[UIViewController class]]) {return (UIViewController *)next;}next = next.nextResponder;} while (next != nil);return nil; } 復制代碼附:我的博客地址
總結
以上是生活随笔為你收集整理的iOS 获取屏幕最上层window以及响应者的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NLP任务
- 下一篇: SQL语句汇总(三)——聚合函数、分组、