我的视图控制器 StartViewController 由其他两个视图控制器(RootViewController 或 TelnetAddressbookViewController)之一打开/添加(addSubview)。我试图找出这两个中的哪一个是启动 StartViewController 的那个。
NSLog(@"superview %@",self.view.superview.description);
NSLog(@"superview %@",self.superclass);
if ([self.view.superview isKindOfClass:[RootViewController class]]) {
NSLog(@"launched by RootViewController");
}else if ([self.view.superview isKindOfClass:[TelnetAddressbookViewController class]]) {
NSLog(@"launched TelnetAddressbookViewController");
}
[self.view removeFromSuperview];
第一个 NSLOG (self.view.superview.description) 输出:
超级视图 UIView: 0x81d6710; 帧 = (0 0; 748 1024); 变换 = [0, 1, -1, 0, 0, 0]; 自动调整大小 = RM+BM;层=>
它的引用是我需要的(0x81d6710),但它的类是 UIViewController 而不是我的自定义视图控制器。