Ho un protocollo da quadro QuickLook:Implementazione iOS Procotol - proprietà di sola lettura
/*!
* @abstract The QLPreviewItem protocol declares the methods that a QLPreviewController instance uses to access the contents of a given item.
*/
@protocol QLPreviewItem <NSObject>
@required
/*!
* @abstract The URL of the item to preview.
* @discussion The URL must be a file URL.
*/
@property(readonly) NSURL * previewItemURL;
@optional
/*!
* @abstract The item's title this will be used as apparent item title.
* @discussion The title replaces the default item display name. This property is optional.
*/
@property(readonly) NSString * previewItemTitle;
@end
/*!
* @abstract This category makes NSURL instances as suitable items for the Preview Controller.
*/
@interface NSURL (QLPreviewConvenienceAdditions) <QLPreviewItem>
@end
Sto cercando di creare il getter e setter per la proprietà di sola lettura previewItemTitle in modo da poter aggiungere il mio piastrelle personalizzate:
.h
#import <Foundation/Foundation.h>
#import <QuickLook/QuickLook.h>
@interface QLPreviewItemCustom : NSObject <QLPreviewItem> {
NSURL * previewItemURL;
NSString *previewItemTitle;
}
@property(readonly) NSURL * previewItemURL;
@property (readonly) NSString *previewItemTitle;
@end
.m
#import "QLPreviewItemCustom.h"
@implementation QLPreviewItemCustom
@synthesize previewItemTitle;
@synthesize previewItemURL;
@end
In questo modo, come ho capito, creerò solo il getter con il metodo di sintesi. Come posso creare il setter?
Perché hai bisogno di setter per proprietà readonly? – Antigluk
Perché questo è ciò che la documentazione del framework Quick Look dice di fare, quando è necessario impostare un titolo personalizzato. – Benites