1.抛出异常:
NSException* myException = [NSException
exceptionWithName:@"QRScan.h: navigationController FileNotFoundException"
reason:@"QRScan.h: self.navigationController Not Found on System"
userInfo:nil];
@throw myException;
2.在做SDK时,不应该将ViewController可见(学学友盟反馈 SDK)
例:
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
@interface QRScan : NSObject
+ (void)showQRScan:(UIViewController *)viewController presentModel:(BOOL)isOrNot;
@end
#import "QRScan.h"
#import "QRScanViewController.h"
@implementation QRScan
+ (void)showQRScan:(UIViewController *)viewController presentModel:(BOOL)isOrNot
{
QRScanViewController *qrScanViewCon=[[QRScanViewController alloc]init];
if (isOrNot) {
UINavigationController *navBar=[[UINavigationController alloc]initWithRootViewController:qrScanViewCon];
[viewController presentViewController:navBar animated:YES completion:nil];
} else {
if (viewController.navigationController==nil) {
NSException* myException = [NSException
exceptionWithName:@"QRScan.h: navigationController FileNotFoundException"
reason:@"QRScan.h: self.navigationController Not Found on System"
userInfo:nil];
@throw myException;
return;
}
[viewController.navigationController pushViewController:qrScanViewCon animated:YES];
}
}
@end