2015-10-20 55 views
0

我创建了一个小的应用程序使用SWIFT来获得IOS剪贴板,但是当我尝试鸣叫的变量,它不会显示为一个字符串,它显示为鸣叫没有显示字符串变量?

<UILabel: 0x146db1a30; frame = (78.6667 229; 257 147); text = 'I'm on my way right now'; opaque = NO; autoresize = RM+BM; userInteractionEnabled = NO; layer = <_UILabelLayer: 0x146db1fd0>>

代替

\(clipText)

我得剪贴板内容的代码是

let pasteboardString:String? = UIPasteboard.generalPasteboard().string 
clipText.text = pasteboardString` 

当我使用此代码发布推文

let tweetController = SLComposeViewController(forServiceType: SLServiceTypeTwitter) 
tweetController.setInitialText("Here's what was on my clipboard:(clipText)") 

我从顶部获取文本。

Image of the code I get instead of (clipText)

+0

你想'clipText.text',不'clipText'。 – rmaddy

回答

1
let pasteboardString:String? = UIPasteboard.generalPasteboard().absolutString 
clipText.text = "\(pasteboardString)" 

但你并不需要张贴的UILabel的信息是正确的,因为你正在尝试后的UILabel对象。而不是这种尝试后仅字符串或UILabel的文本

,而不是"\(clipText)"使用"\(clipText.text)"

+0

为什么'“\(pasteboardString)”'而不仅仅是'pasteboardString'? – rmaddy

+0

第一种方法给编译器一些值,它会呈现为字符串,所以如果你的pasteboardString一些如何将int类型它将总是返回字符串格式在“\()” – C0mrade

+0

通过做'var pasteboardString:String! = UIPasteboard.generalPasteboard()。string'来代替。感谢您的帮助和建议! – nwood