Скопируйте UITextView в PasteBoard
Я пытаюсь скопировать мою "DescriptionLabel" в Картон. DescriptionLabel устанавливается как UITextView (я знаю, что имя немного сбивает с толку...). Тем не мение,
- (IBAction)copy:(id)sender {
UIPasteboard *appPasteBoard = [UIPasteboard generalPasteboard];
appPasteBoard.persistent = YES;
[appPasteBoard setString:@"This text is being copied"];
}
Строка в коде копируется, но мне не удается получить ее, копируя мой UITextView/DescriptionLabel. Это:
[appPasteBoard setString:_DescriptionLabel];
не работает.
Кто-нибудь из вас знает, что я могу сделать, чтобы это сработало? Бороться с этим уже несколько дней...
1 ответ
Ну, проблема в том, что вы используете setString:
хранить UITextView, который является элементом управления UIKit, а не NSString, в монтажном столе. Что вы, вероятно, имеете в виду, чтобы сохранить его текстовое значение.
Objective-C не поддерживает неявные преобразования, такие как Scala или Swift. Решение простое, просто доступ к text
Свойство явно:
[appPasteBoard setString:_DescriptionLabel.text];
Я призываю вас заглянуть в UIPasteboard
документация для деталей относительно этого API: https://developer.apple.com/library/prerelease/ios/documentation/UIKit/Reference/UIPasteboard_Class/index.html