iOS 获取屏幕最上层window以及响应者
生活随笔
收集整理的這篇文章主要介紹了
iOS 获取屏幕最上层window以及响应者
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1. 通過(guò)UIApplication獲取
UIWindow *window = [UIApplication sharedApplication].keyWindow; 或者 UIWindow *window = [[UIApplication sharedApplication].windows lastObject]; 復(fù)制代碼2. 比較嚴(yán)謹(jǐn)?shù)墨@取方法:
- (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; } 復(fù)制代碼3. 查找響應(yīng)者
// 新建一個(gè)UIView的類目,把這個(gè)方法放進(jìn)去,以后就可以直接通過(guò)view.findResponderViewController來(lái)獲取視圖的控制器了。 - (UIViewController *)findResponderViewController{UIResponder *next = self.nextResponder;do {if ([next isKindOfClass:[UIViewController class]]) {return (UIViewController *)next;}next = next.nextResponder;} while (next != nil);return nil; } 復(fù)制代碼附:我的博客地址
總結(jié)
以上是生活随笔為你收集整理的iOS 获取屏幕最上层window以及响应者的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: NLP任务
- 下一篇: SQL语句汇总(三)——聚合函数、分组、