按下按钮时我正在使用QR码SDK,它会有一个presentModalView,我有一个信息按钮。我希望它链接到另一个笔尖,以显示其工作原理的信息!
-(IBAction)QRscan;
{
//Make sure we can even attempt barcode recognition, (i.e. on a device without a camera, you wouldn't be able to scan anything).
if([SKScannerViewController canRecognizeBarcodes])
{
SKScannerViewController *scannerVC = [[SKScannerViewController alloc] init]; //Insantiate a new SKScannerViewController
scannerVC.delegate = self;
scannerVC.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(cancelTapped)];
UIButton *button = [UIButton buttonWithType:UIButtonTypeInfoLight];
[button addTarget:self action:@selector(settingsTapped) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *infoItem = [[UIBarButtonItem alloc] initWithCustomView:button];
scannerVC.navigationItem.rightBarButtonItem = infoItem;
scannerVC.title = @"Scan a QRcode";
qrtest.text = @""; //Reset our info text label.
scannerVC.shouldLookForQRCodes = YES;//QRCode Checker
UINavigationController *_nc = [[[UINavigationController alloc] initWithRootViewController:scannerVC] autorelease]; //Put our SKScannerViewController into a UINavigationController. (So it looks nice).
[scannerVC release];
[self presentModalViewController:_nc animated:YES]; //Slide it up onto the screen.
}
- (void) settingsTapped {
qrcode_info *otherVC = [[qrcode_info alloc] initWithNibName:@"qrcode_info" bundle:Nil ];
[self presentModalViewController: otherVC animated:YES];
[otherVC release];
}
答案 0 :(得分:0)
您应该将settingsTapped函数添加到_nc viewController中,因为它将从模态视图控制器(即_nc)内部调用,然后您必须在其上面显示另一个模态视图控制器。
Apple指南建议您应“翻转”信息屏幕,而不要使用其他模态视图控制器。 (看看我点击时天气应用程序的行为)
答案 1 :(得分:0)
您正试图在不允许的模态视图控制器上显示模态视图控制器 您必须将子视图添加到摄像机视图。