2016-11-22 9 views
1

私はいくつかのデータを検索するコードを持つuisearchバーを持っています。そのうちのいくつかをクリックすると、別のUIViewにプッシュする必要があります。コードで繋ぐ

だから私はこの

let vc=self.storyboard?.instantiateViewController(withIdentifier: "id") as! mapViewController 
self.present(vc, animated: true, completion: nil) 

を使用していますそれはうまく動作しますが、それは存在しているのでセグエた後、ビューは、narvigationコントローラではありません。だから私はショーセグを使用したいと思います。 それから私は

self.show(vc, sender: self) 

にコードを変更し、私はそれを実行すると、それが動作して

"while an existing transition or presentation is occurring; the navigation stack will not be updated." 

示していない私はここにショーのセグエを使用するようにすればよいですか?メッセージが(まあ、それはあなたの顔でその権利を叫ぶ)暗示するよう

答えて

0

pushViewController方法

self.navigationController?.pushViewController(vc, animated: true) 
+0

私もこれを試しましたが、これも動作しませんでした。同じ結果 – Xie

0

を使用してください。 最後にアニメーション化されたナビゲーションアクションが終了するまで、あなたのアニメーションのセグを開始しないでください。 あなたのコードは、それが起こるように再構成する必要があります。

+0

ごめんなさい – Xie

0

あなたの現在のViewControllerもナビゲーションに入れておく必要があります。その後、別のコントローラを押すことができます。最初に現在のViewControllerをNavigation ControllerのrootViewControllerとして設定し、現在のControllerからmapViewControllerを押します。

関連する問題