UIPasteboard - 无法复制文本

6

这段代码应该将字符串复制到通用粘贴板中,作为[[UIPasteboard generalPasteboard] string]对象,但是该方法会导致程序终止。

- (void)copyResultToPasteboard {
    NSString *message = self.resultTextView.text;
    [UIPasteboard generalPasteboard].string = message;
    [message release];
}

我认为这与格式有关,因为如果将消息设置为字面字符串,则该方法有效,但是resultTextView.text只是一个NSString...我不完全理解,有人可以帮忙吗?

2个回答

3

你确定resultTextView.text返回的是存储数据的NSString*的副本,而不是实际使用的备份吗?查看苹果文档,似乎它只返回内部指针(未保留)。在UITextView类中使用的字符串上调用释放可能会导致这种行为。


3

你正在向一个对象发送 -release,但在此之前并没有(至少从片段中看起来是这样的)先进行 -retain+alloc 或通过 -copy 获取另一个对象。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接