【问题标题】:Open different links with the same beginning打开同一个开头的不同链接
【发布时间】:2016-07-01 13:40:17
【问题描述】:

我有一个 NSObject 和数组,其中包含有关名人的不同信息。它包括一个 Wikipedia 链接,该链接存储在每个名人的字符串中。我有一个按钮,应该打开链接并将用户引导到特定名人的维基百科页面,但并非所有名人都有维基百科页面,在这种情况下,我希望在按下按钮时显示 UIAlertController。

我已经编写了一个成功显示 UIAlertController 的 if 语句,但是如何打开附加到此人的特定 url 链接?

我想出了两个解决这个问题的想法(但我无法让它们发挥作用):

1.所有现有链接都有相同的开头,“https://www.wikipedia.org/wiki/”,没有链接的名人只会有一个空字符串。如果字符串包含/识别维基百科链接的开头并且仅在字符串为空(= 根本没有维基百科链接)时显示警报,是否有办法打开链接?

@IBAction func ReadMoreTapped(sender: AnyObject) {

     //The celebrity's wikipedia link is stored in the "WikiSegue"
     if WikiSegue == "https://www.wikipedia.org/wiki/..." {

    UIApplication.sharedApplication().openURL(NSURL(string : WikiSegue)!)

} else {

  //Show "missing wikipedia page" alert

    }

} //End of ReadMoreTapped button

2.或者如果字符串中没有维基百科链接(它是空的),是否可以调用警报?使用类似的东西?

 @IBAction func ReadMoreTapped(sender: AnyObject) {

     //The wikipedia link is stored in the "WikiSegue"
     if WikiSegue.isEmpty == true  {

   //Show "missing wikipedia page" alert

} else {

 UIApplication.sharedApplication().openURL(NSURL(string : WikiSegue)!)

    }

} //End of ReadMoreTapped button

我不认为这是一个很难解决的问题,但我刚刚开始编码,因此非常感谢所有帮助/想法。

【问题讨论】:

    标签: ios arrays swift string hyperlink


    【解决方案1】:

    我假设您的数组包含相同类型的对象。并且对象包含一个具有 url 的字符串字段。首先,您应该检查该字段是否包含字符串(可能 string.characters.count > 0),而不是尝试使用该字符串创建 NSURL,如下所示。

    if let wikiURL = NSURL(string: "URL STRING") {
        UIApplication.sharedApplication().openURL(wikiURL)
    } else {
        // Show alert
    }
    

    【讨论】:

    • 我使用了 string.character.count --> 效果很好!谢谢!
    猜你喜欢
    • 2020-09-28
    • 1970-01-01
    • 2015-06-30
    • 1970-01-01
    • 1970-01-01
    • 2019-04-14
    • 2011-08-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多