2014-12-25 30 views
-1

我試圖將我的「DescriptionLabel」複製到粘貼板。 DescriptionLabel被設置爲UITextView(我知道這個名字有點混亂......)。無論如何,將UITextView複製到PasteBoard

- (IBAction)copy:(id)sender { 

    UIPasteboard *appPasteBoard = [UIPasteboard generalPasteboard]; 
    appPasteBoard.persistent = YES; 
    [appPasteBoard setString:@"This text is being copied"]; 
    } 

的串碼被複制,但我不能設法得到它的拷貝我的UITextView/DescriptionLabel。此:

[appPasteBoard setString:_DescriptionLabel]; 

不起作用。

你們有沒有任何線索我可以做些什麼來使它工作?一直在努力...

+0

這有什麼好做的Xcode。無論如何,粘貼板不能容納*任意*對象。你想要'setString:_DescriptionLabel.text'來代替嗎? –

回答

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