Iphone UIKit NIB未装入包中

Iphone UIKit NIB未装入包中,iphone,objective-c,nib,quicklook,Iphone,Objective C,Nib,Quicklook,我尝试删除对框架的引用,删除派生数据,清理项目,读取QuickLook框架。我确实在Finder中展示了苹果和我的项目,它们的路径相同 当我使用UIDocumentInteractionController时也会发生同样的事情。 带有email/print等选项的小叠加没有加载到我的项目中。只需尝试initwithnib QLPreviewController *previewController = [[QLPreviewController alloc] init]; [p

我尝试删除对框架的引用,删除派生数据,清理项目,读取
QuickLook
框架。我确实在Finder中展示了苹果和我的项目,它们的路径相同

当我使用
UIDocumentInteractionController
时也会发生同样的事情。
带有email/print等选项的小叠加没有加载到我的项目中。

只需尝试
initwithnib

    QLPreviewController *previewController = [[QLPreviewController alloc] init];

    [previewController setDataSource:self];

    [previewController setDelegate:self];

    [self presentViewController:previewController animated:YES completion:^{}];



#pragma mark QLPreviewControllerDataSource

- (NSInteger) numberOfPreviewItemsInPreviewController:(QLPreviewController *)controller {

    return 1;
}

- (id <QLPreviewItem>)previewController:(QLPreviewController *)controller previewItemAtIndex:(NSInteger)index {
    return [NSURL fileURLWithPath:self.pdfPath];
}

希望它能起作用。

只需尝试
initwithnib

    QLPreviewController *previewController = [[QLPreviewController alloc] init];

    [previewController setDataSource:self];

    [previewController setDelegate:self];

    [self presentViewController:previewController animated:YES completion:^{}];



#pragma mark QLPreviewControllerDataSource

- (NSInteger) numberOfPreviewItemsInPreviewController:(QLPreviewController *)controller {

    return 1;
}

- (id <QLPreviewItem>)previewController:(QLPreviewController *)controller previewItemAtIndex:(NSInteger)index {
    return [NSURL fileURLWithPath:self.pdfPath];
}

希望它能工作。

如果您使用过NavigationController,请使用:

QLPreviewController*previewController=[[QLPreviewController alloc]init]

[self.navigationController pushViewController:previewController动画:是]

否则

QLPreviewController*previewController=[[QLPreviewController alloc]init]


[自我呈现ModalViewController:previewController动画:是]

如果您使用过NavigationController,请使用:

QLPreviewController*previewController=[[QLPreviewController alloc]init]

[self.navigationController pushViewController:previewController动画:是]

否则

QLPreviewController*previewController=[[QLPreviewController alloc]init]

[自我呈现ModalViewController:previewController动画:是]

根据QL,生成器不应该将NIB文件作为资源

尽管快速查找生成器没有(也不应该)将nib文件作为资源,但如有必要,您可以添加其他资源

根据QL,生成器不应该将NIB文件作为资源

尽管快速查找生成器没有(也不应该)将nib文件作为资源,但如有必要,您可以添加其他资源


苹果的支持为我提供了答案。 我在一个类别中过度使用了init方法,这破坏了类的初始化。
寓意:不要在category方法中重写init。

苹果支持为我提供了答案。 我在一个类别中过度使用了init方法,这破坏了类的初始化。
寓意:不要在category方法中重写init。

这不是问题所在。我可以演示或推动控制器,但它仍然无法加载。这不是问题所在。我可以演示或推动控制器,但它仍然没有加载。没有加载的是_UIDocumentActivityViewController。QLEVIEW加载正常。未加载的是_UIDocumentActivityViewController。QLEVIEW加载良好。您不应尝试覆盖类别中的任何方法。类别仅用于向类添加新方法。很高兴你找到了答案!是的,苹果也这么说。干杯决不应试图重写类别中的任何方法。类别仅用于向类添加新方法。很高兴你找到了答案!是的,苹果也这么说。干杯
QLPreviewController *previewController = [[QLPreviewController alloc] initWithNib: (QLPreviewController) bundle : nil];