-1

我正在尝试将我的“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];

不管用。

你们中有人知道我能做些什么来使它工作吗?这几天一直在纠结这个...

4

1 回答 1

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

于 2014-12-25T15:22:22.207 回答