我不知道如何为我的 QLPreviewController 类设置 previewItemTitle 属性。似乎有点奇怪,因为此类的iPhone开发人员文档说该属性是@property (readonly),这意味着我无法设置它。

有任何想法吗。谢谢

我的代码:

QLPreviewController *preview = [[QLPreviewController alloc] init];
    [preview setDataSource:self];

    [self presentModalViewController:preview animated:YES];

最佳答案

QLPreviewController 没有 previewItemTitle 属性。您的意思是 QLPreviewItem 协议(protocol)。

“只读”意味着你不能通过属性设置它(除非它被覆盖);即该属性未声明 setPreviewItemTitle: 方法。这对协议(protocol)来说是有意义的: Controller 不希望能够设置预览项目标题。

对于最基本的预览项目,您可以使用以下内容:

@interface BasicPreviewItem : NSObject<QLPreviewItem>
{
}

@property (nonatomic, retain) NSURL * previewItemURL;
@property (nonatomic, copy) NSString* previewItemTitle;

@end

@implementation BasicPreviewItem

@synthesize previewItemURL, previewItemTitle;

-(void)dealloc
{
  self.previewItemURL = nil;
  self.previewItemTitle = nil;
  [super dealloc];
}

@end

但是,该协议(protocol)的重点是您可以采用任何类并添加 -(NSURL*)previewItemURL-(NSString*)previewItemTitle 方法(例如,如果您有音乐播放器,则可以将这些方法添加到“Track”类并能够预览轨道)。

关于iphone - QLPreviewController - 设置 previewItemTitle,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3790014/

10-09 12:27