【发布时间】:2012-03-28 10:07:16
【问题描述】:
我知道这非常愚蠢。
我有一个扫描二维码的视图控制器。我在AppDelegate (didFinishLaunchingWithOptions) 中创建它,并且我还将我的AppDelegate 设置为视图控制器的委托,当他完成扫描代码时它将调用一个方法。在那个方法中,我在AppDelegate 中实现了我想呈现一个UINavigationController。问题是它没有显示我的导航控制器。这是我的代码:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
reader=[ZBarReaderViewController new];
reader.readerDelegate=self;
reader.supportedOrientationsMask=ZBarOrientationMaskAll;
ZBarImageScanner *scanner=reader.scanner;
[scanner setSymbology:ZBAR_I25 config:ZBAR_CFG_ENABLE to:0];
[self.window addSubview:reader.view];
[self.window makeKeyAndVisible];
return YES;
}
-(void) imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
RootViewController *rootViewController=[[RootViewController alloc] init ]; //create root view controller
UINavigationController *navigationController=[[UINavigationController alloc] initWithRootViewController:rootViewController]; // create and init navigation controller with viewController
[navigationController setValue:[[GradientBar alloc] init] forKey:@"navigationBar"];
rootViewController.title=@"mTLU";
[reader presentModalViewController:navigationController animated:NO];
}
【问题讨论】:
-
可以看看
[ZBarReaderViewController new]的实现吗? -
是我从网上下载的一个库。他们有一个示例项目,但他们使用根控制器向读者展示,然后同一个根控制器也是委托。就我而言,我希望这个 ZBarViewController 成为根控制器,并且在它完成扫描后我想呈现一个新的视图控制器。
-
好像你忘了在
didFinishLaunchingWithOptions:中设置self.window.rootViewController
标签: iphone ios xcode uiviewcontroller