用一个分类,具体:
.h#import@interface UIView (CurrentController)/** 获取当前View的控制器对象 */-(UIViewController *)getCurrentViewController;@end
.m
#import "UIView+CurrentController.h"@implementation UIView (CurrentController)/** 获取当前View的控制器对象 */-(UIViewController *)getCurrentViewController{ UIResponder *next = [self nextResponder]; do { if ([next isKindOfClass:[UIViewController class]]) { return (UIViewController *)next; } next = [next nextResponder]; } while (next != nil); return nil; } @end 应用 : 在cell中拿到 控制器 然后 可以直接在 cell中 将 下一个控制器 直接 push。 这个的巧妙利用可以很方便的对view进行封装。