2015-11-02 48 views
4

(我的應用程序中的相關部分)的定義:放鬆兩個階段

我在地圖上有我的視圖(MAP)。用戶點擊一個視圖,應用程序反向地理編碼獲取地址,並插入到另一個視圖(PICKER),它允許用戶從選擇器中選擇她想要的地點名稱,或轉到另一個視圖並給出自定義名稱(CUSTOM)。

Storyboard of the app

問題是,當我試圖從CUSTOM放鬆失敗。

在定製我放鬆,以同樣的方法,從PICKER,我在MAP的控制器即

@IBAction func unwindCancel(segue:UIStoryboardSegue) { 
    // do nothing as saving was cancelled 
    return 
} 

@IBAction func unwindSave(segue:UIStoryboardSegue) { 
    self.reloadGeodesics() 
} 

下面我介紹我的故事板平倉,即Ctrl拖動取消(和保存)如何作出退出並選擇相應的Action segue。

This is my action segue

這是我的錯誤消息

2015年11月2日14:58:59.753經由[19620:2883125] - [via.LocationNamePickerViewController unwindSave:]:無法識別的選擇發送到實例0x7bb35770

2015年11月2日14:58:59.789經由[19620:2883125] ***終止應用程序由於 未捕獲的異常 'NSInvalidArgumentException',原因: 「 - [via.LocationNamePickerViewContro ller unwindSave:]:無法識別 選擇器發送到實例0x7bb35770'

當我點擊保存。 via是我的應用程序名稱,LocationNamePickerViewController是PICKER的控制器。 我看了很多教程,對我來說,我似乎在做一切正確的事情。

這是一個問題,通過點擊其他錯誤選擇CUSTOM中的segue? MAP和PICKER之間的導航控制器是否會使編譯器崩潰?從錯誤看來,PICKER的控制器無法將動作繼續調用委託給MAP控制器。會發生這種情況嗎?如果發生這種情況,它如何解決?在PICKER中一切都很好,問題在於解開CUSTOM。

回答

0

希望這將幫助你

你放置的UINavigationController地圖查看後,讓LocationNamePicker控制器和地點名稱輸入控制器上的導航控制器的堆棧,這樣看來,它甚至不承認地圖視圖控制器的開卷行動你在故事板中選擇了該動作。

爲什麼不把導航控制器放在Map View Controller之前?

我認爲它不會崩潰然後。

+0

沒這,並沒有解決我的問題 – Antti

2

創建開卷賽格瑞的方式是不對的,你應該建立賽格瑞這樣

控制+拖動從位置輸入VC到地圖退出

的Gif

+0

我這樣做了(刪除之間不必要的導航控制器後),但仍然是相同的錯誤消息 – Antti

+0

你不需要刪除任何NavigationController,只需拖動欄按鈕到地圖VC退出,我發佈gif – Leo

+0

沒有工作,無法在此處上傳我的.gif所以[this](https://www.dropbox .com/s/ixq0lbvt0fjzovh/animation.gif?dl = 0)就是我所做的。同樣的錯誤信息,我不明白,現在一切都應該是非常微不足道的(正在與這個問題一週戰鬥) – Antti