Сохраните и извлеките строку NSAttributed с помощью NSTextAttachment в / из Pasteboard

Я имею NSAttributedString с NSTextAttachment, Я создал подкласс NSTextAttachment (с реализованными методами кодирования / декодирования) и имеет свойство attachedView так что я могу поставить любую точку зрения как NSAttachment в приписанную строку. Проблема в том, что я не могу сохранить и получить вложение в / из UIPateboard,

Любые предложения, как это можно сделать?

//Store
NSData *data = [[self.storage attributedSubstringFromRange:self.selectedRange] archivedData];
[[UIPasteboard generalPasteboard] setItems:@[[(id)kUTTypePlainText: attributedString.string],
                                             [(id)kUTTypeData: data]]];

//Retrieve
NSAttributedString *attributedString = [[UIPasteboard generalPasteboard] loadAttributedString];
if (!attributedString) {
    [super paste:sender];
    return;
}

//Extension
@implementation NSAttributedString (Additions)

- (NSData *)archivedData {
    return [NSKeyedArchiver archivedDataWithRootObject:self];
}

- (NSAttributedString *)unarchiveWithData:(NSData *)data {
    return [NSKeyedUnarchiver unarchiveObjectWithData:data];
}

@end

0 ответов

Другие вопросы по тегам