2016-12-25 16 views
1

好吧我建立一個帶有頁眉和頁腳的uicollectionview的消息擴展應用程序。幾次嘗試後我才知道我爲什麼不能打開使用一般的語法消息控制器的URL - 因爲它的擴展名應該使用:Swift:無法從uiCollectionView中的extensioncontext打開url?

let url: URL = URL(string: "http://www.google.com")! 
    self.extensionContext?.open(url, completionHandler: { (success: Bool) in 
     print("hi") 
    }) 

這編譯,但在MessageViewController文件不起作用。我不知道爲什麼,但然後在我的

class FooterCollectionReusableView: UICollectionReusableView { 

這甚至不編譯。我得到錯誤 enter image description here

如何在我的消息擴展中從我的頁腳打開url?這可能嗎?

回答

0

它看起來像你在FooterCollectionReusableView上調用extensionContext。 extensionContextUIViewController的一個屬性,所以如果你想從視圖中引用它,你將需要保留對父視圖控制器的extensionContext或create a protocol的引用,這將允許你調用父視圖控制器來做任何你需要的用extensionContext完成。

+0

是的,但問題是即使在messageviewcontroller的URL不打開 - 它只是完成了完成塊,但沒有打開safari – skyguy

+0

有沒有我的網址有問題? – skyguy

+0

這可能是因爲Today擴展在技術上是唯一可以打開其他應用程序的擴展。這個問題會更具體http://stackoverflow.com/questions/38319433/can-imessage-extension-open-host-app – Samantha