2015-09-21 87 views
1

我正在開發的應用程序出現了一個奇怪的問題。酒吧按鈕項目都隨機消失。欄按鈕項從導航控制器中消失

我有一個導航控制器帶有一個按鈕(如圖像),通過push segue將用戶帶到Menu Table View Controller。

菜單表視圖控制器有3行,即菜單選項。

每個菜單選項都會通過push segue將用戶帶到另一個View Controller。每個視圖控制器都有一個使用默認按鈕顯示的後退按鈕。

這是一個非常簡單,直接的設置,沒有任何代碼。

我注意到很多場合所有的酒吧按鈕物品都消失了。沒有後退按鈕,沒有菜單按鈕等。雖然我仍然可以點擊該區域並且按鈕仍然有效 - 只是不可見。

我沒有通過隱藏按鈕的代碼做任何事情。

我已經注意到有很多次,如果我把我的應用程序放在前臺,手機進入睡眠狀態,那麼當我回來時,按鈕都消失了。但並非總是如此。

但是,這不是按鈕消失的唯一時間。我實際上看到他們在使用菜單系統時消失了。但是再一次,我沒有看到這樣的代碼。

我目前在iOS9上,但它在iOS8上也一樣。

任何想法可能是什麼問題?

回答

1

糟糕...原來我責怪消失欄按鈕的項目。

我加載SKStoreProductViewController(呈現在App Store視圖控制器),我想使顏色我的應用程序相匹配,從而在網絡上搜索後,我找到了一個解決方案:

UINavigationBar.appearance().tintColor = myColor 

和它的工作。

但這並沒有影響我的應用欄按鈕項目。直到我打電話給MFMailComposeViewController(編寫一封電子郵件)問題發生。

當關閉MFMailComposeViewController時,我的應用程序欄按鈕項消失。

那麼他們沒有消失,他們變成了與導航欄相同的顏色,他們仍然在那裏,只是看不到它們。

解決的辦法是設置SKStoreProductViewController像這樣的着色顏色:

myStoreProductViewController.view.tintColor = myColor 
0

我希望這會幫助you.try這個代碼在你的視圖didload方法。

// 1 
var rightAddBarButtonItem:UIBarButtonItem = UIBarButtonItem(title: "Add", style: UIBarButtonItemStyle.Plain, target: self, action: "addTapped:") 
// 2 
var rightSearchBarButtonItem:UIBarButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Search, target: self, action: "searchTapped:") 
// 3 
self.navigationItem.setRightBarButtonItems([rightAddBarButtonItem,rightSearchBarButtonItem], animated: true) 
+0

我不敢肯定,這將幫助 - 糾正我,如果我錯了,但是這是用來隱藏/顯示導航欄。在我的情況下,導航欄顯示正確,只是其按鈕消失。 – Bingo

+0

在您的視圖中嘗試此操作加載方法我編輯了代碼 –

0

這些下面的事情,你可以檢查, 如果插入導航禁令在故事板,然後,檢查用戶交互啓用與否和導航欄被隱藏。

enter image description here

,您可以檢查的第二件事情是,如果您的導航條對欄按鈕的一些看法,因爲你說的方法是當按鈕空間被竊聽調用。 構建應用程序時使用調試視圖層次結構。

enter image description here