在iOS开发过程中,有些时候需要用到这种情况,在获取UIView所在的控制器,比如在UIView里面放一个弹框,这样就需要获取到当前控制器的位置,那么本篇文章就来分享一下获取UIView所在控制器的方法。
1、UIView的.h文件
#import <UIKit/UIKit.h>
@interface TeaChoosePopoutView : UIView
@end
2、UIView的.m文件
#import "TeaChoosePopoutView.h"
@implementation TeaChoosePopoutView
- (void)awakeFromNib {
[super awakeFromNib];
[self.getViewController presentViewController:alert animated:YES completion:nil]; //调用获取控制器的方法
}
//获取当前控制器的方法
- (UIViewController *)getViewController {
UIView *view = self.superview;
while(view) {
UIResponder *nextResponder = [view nextResponder];
if ([nextResponder isKindOfClass:[UIViewController class]]) {
return (UIViewController *)nextResponder;
}
view = view.superview;
}
return nil;
}
@end
以上就是本章全部内容,欢迎关注三掌柜的微信公众号、微博,欢迎关注!