@interface UIView (Extend)
- (UIViewController *)viewController;
@end
@implementation UIView (Extend)
- (UIViewController*)viewController {
for (UIView* next = [self superview]; next; next = next.superview) {
UIResponder* nextResponder = [next nextResponder];
if ([nextResponder isKindOfClass:[UIViewController class]]) {
return (UIViewController*)nextResponder;
}
}
return nil;
}
@end
使用示例:
-(void)buttonPress{
ElectronFrom *electronForm=[[ElectronFrom alloc]init];
[[self viewController].navigationController pushViewController:electronForm animated:YES];
[electronForm release];
}