我目前在我的应用程序中有一个 UITableView,它使用 UIDocumentInteractionController 来显示特定文件类型的默认图像:
我想知道我是否有一个占位符,可以说任何图像文件类型我可以有那个节目而不是默认的吗?这就是我想要的默认图像占位符:
这可能吗?我将如何实现我读到的关于使用 .plist 的信息,但我没有成功。
我目前在我的应用程序中有一个 UITableView,它使用 UIDocumentInteractionController 来显示特定文件类型的默认图像:
我想知道我是否有一个占位符,可以说任何图像文件类型我可以有那个节目而不是默认的吗?这就是我想要的默认图像占位符:
这可能吗?我将如何实现我读到的关于使用 .plist 的信息,但我没有成功。
的UTI
属性UIDocumentInteractionController
为您提供文件的统一类型标识符,请参阅统一类型标识符概念。例如,“public.tiff”用于 TIFF 文件,“public.jpeg”用于 JPEG 文件,“com.apple.quicktime-movie”用于 QuickTime 电影。
统一类型标识符在一致性层次结构中声明。TIFF 和 JPEG 文件都是图像,在 UTI 概念中,这通过“public.tiff”和“public.jpeg”都符合“public.image”这一事实来表达。
话虽如此,您可以执行以下操作来为所有图像文件类型显示您自己的图标。
将该图标添加到您的应用程序资源中,例如“myimageicon.png”。
要为文件选择图标,请检查该文件的 UTI 是否符合“public.image”并在这种情况下使用您的图标。否则使用默认图标。
// Assuming that self.docInteractionController is already set up ...
if (UTTypeConformsTo((CFStringRef)self.docInteractionController.UTI, kUTTypeImage)) {
cell.imageView.image = [UIImage imageNamed:@"myimageicon.png"];
} else {
cell.imageView.image = docInteractionController.icons.lastObject;
}
您必须导入<MobileCoreServices/MobileCoreServices.h>
并添加MobileCoreServices.framework
才能进行编译。