2
我有一個應用程序在我打電話給NSPrintOperation時掛起。NSPrintOperation掛起應用程序
我有一個觀點,即是創建一個單獨的類(UIView的)是這樣的:
PBPrintImage *printImage = [[PBPrintImage alloc] init];
printImage.image = finalImage;
[printImage printWithNoPanel:self];
內PBPrintImage
然後,我有以下方法:
- (void)printWithNoPanel:(id)sender {
CGSize picSize = CGSizeMake(300, 446);
NSPrintInfo *printInfo = [NSPrintInfo sharedPrintInfo];
NSRect imageRect = NSRectFromCGRect(CGRectMake(0, 0, picSize.width, picSize.height));
NSImageView *imageView = [[NSImageView alloc] initWithFrame:imageRect];
[imageView setImage:image];
NSPrintOperation *op = [NSPrintOperation printOperationWithView:imageView printInfo:printInfo];
[op setCanSpawnSeparateThread:YES];
[op setShowsPrintPanel:NO];
[op runOperation];
}
如果我不把它該應用程序按照懷疑工作。我試着用和不用setCanSpawnSeparateThread:
來調用它。我如何設置它,因此它必須位於單獨的線程中,因此不會弄亂應用程序的正常流程?
它確實打印,但這只是工作的一半。