Xcode 在textview中打开链接

Xcode 在textview中打开链接,xcode,url,swift,random,textview,Xcode,Url,Swift,Random,Textview,我正在对一个项目进行编码,用户在textview(名为textoutput)的按钮下按下一个按钮,程序从我命名为textinfo的数组中随机获取一个链接。在第一次按下按钮并按下链接时运行项目,右侧链接将在safari中打开,但第二次按下按钮并显示新的随机选择链接时,按下链接时将打开第一个链接,而不是按下的链接。每次按下按钮时,当按下新链接时,只有第一个链接处于打开状态时,此操作将继续 @IBAction func Frukostaction(sender: UIButton) { l

我正在对一个项目进行编码,用户在textview(名为textoutput)的按钮下按下一个按钮,程序从我命名为textinfo的数组中随机获取一个链接。在第一次按下按钮并按下链接时运行项目,右侧链接将在safari中打开,但第二次按下按钮并显示新的随机选择链接时,按下链接时将打开第一个链接,而不是按下的链接。每次按下按钮时,当按下新链接时,只有第一个链接处于打开状态时,此操作将继续

@IBAction func Frukostaction(sender: UIButton) {


    let random = Int(arc4random_uniform(19))

    textoutput.text = textinfo[random]

} 

如何解决这个问题?提前感谢。

我通过设置
UITextView.delegate
并在
shouldInteractWithURL
函数中手动调用openURL解决了这个问题。比如说

let links = ["http://www.google.com","http://www.yahoo.com","http://www.discovery.com"]
var textView : UITextView!
var currentLinkIndex : Int = 0


@IBAction func buttonClick(sender: AnyObject) {
    let random : Int = Int(arc4random()) % 3

    textView.text = links[random]
    currentLinkIndex = random
}

func textView(textView: UITextView, shouldInteractWithURL URL: NSURL, inRange characterRange: NSRange) -> Bool {

    let url = NSURL(string:links[currentLinkIndex])
    UIApplication.sharedApplication().openURL(url!)
    return false
}

我让它工作,以便按钮显示带有链接的数组。但是我在定义哪个文本视图时遇到了问题…应该交互。。。突击队应该使用。或者说什么。我对斯威夫特·呵呵还很陌生。但是当你说“设置UITextView.delegate”时,你的意思是“var textView:UITextView!”还是我应该早点定义它@阅读本文,了解委托是什么。我已经阅读了几次教程,并试图在代码中实现“textview.delegate=self”,但只得到了错误“致命错误:在展开可选值时意外发现nil”,在左侧的文本栏中,它显示我的所有“UiTextView:s”(我有九个)的值都为nil。我想我理解委托的概念,但无法使其发挥作用,因此如何手动设置textview的值更容易吗?谢谢你的回答@拉克什布