我正在設計一個應用程式,它使用戶能夠登錄,提供類別、子類別和子子類別的串列,然后顯示這些所選類別中的產品。
為此,我有一個帶有 5 個選項卡的 UITabBarController,所有這些選項卡都是 UINavigationControllers,分別帶有每個頁面的根目錄。第一個選項卡(稱為產品)具有我上面描述的導航結構,類別 -> 子類別 - 子子類別 -> 產品
現在問題來了……當第一次瀏覽這個時,這將完全正常,我能夠瀏覽和選擇類別和產品。但是,如果我要一直轉到產品并按回類別并再次開始,如果我選擇一個子類別,那么 navigationController 將回傳一個空參考例外。
我正在使用 navigationController.PushViewController(viewController, true) 推送視圖控制器,并且沒有像現有問題中看到的那樣進行任何模式演示。
我確實希望有人可以提供幫助。謝謝,詹姆斯·麥克納爾蒂
uj5u.com熱心網友回復:
所以我正在回答我自己的問題......對于那些可能遇到這個問題的人,甚至可能是給自己的一個說明。
因此,在我創建的事件中,我忘記從 viewDidDissapear() 方法中的操作中取消附加事件 - 您應該宣告....
Tapdelegate.Selected -= EventMethod
這是因為在呼叫方法之前不這樣做或這樣做會導致視圖控制器留在記憶體中,因此在使用時
NavigationController.PushViewController(viewcontroller, bool)
將使用與事件的初始呼叫相同的句柄。這是一個沒有。好難過!!!
如果您也遇到此問題,希望這對您有所幫助。享受。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/361141.html
標籤:沙马林 xamarin.ios 导航控制器 空引用异常 导航控制器
上一篇:XamariniOS:System.ExecutionEngineException。詳細資訊:在僅aot模式下運行時嘗試JIT編譯方法
