// // UIView+FindUIViewController.m // RCTVideo // // Created by Stanisław Chmiela on 31.03.2016. // Copyright © 2016 Facebook. All rights reserved. // // Source: http://stackoverflow.com/a/3732812/1123156 #import "UIView+FindUIViewController.h" @implementation UIView (FindUIViewController) - (UIViewController *) firstAvailableUIViewController { // convenience function for casting and to "mask" the recursive function return (UIViewController *)[self traverseResponderChainForUIViewController]; } - (id) traverseResponderChainForUIViewController { id nextResponder = [self nextResponder]; if ([nextResponder isKindOfClass:[UIViewController class]]) { return nextResponder; } else if ([nextResponder isKindOfClass:[UIView class]]) { return [nextResponder traverseResponderChainForUIViewController]; } else { return nil; } } @end