我正面臨一個小問題。衆所周知,如果您有超過5個選項卡,iOS會添加一個「更多」按鈕,並使用「編輯」按鈕在「更多」視圖中顯示其他欄項目。由於某些原因,我想刪除此按鈕。不知何故,我嘗試了下面的方法,它不起作用。如何在基於標籤的iPhone應用程序的「更多」視圖中刪除「編輯」按鈕
tabBarController.moreNavigationController.navigationItem.rightBarButtonItem = nil;
任何人都可以幫我嗎?謝謝。
我正面臨一個小問題。衆所周知,如果您有超過5個選項卡,iOS會添加一個「更多」按鈕,並使用「編輯」按鈕在「更多」視圖中顯示其他欄項目。由於某些原因,我想刪除此按鈕。不知何故,我嘗試了下面的方法,它不起作用。如何在基於標籤的iPhone應用程序的「更多」視圖中刪除「編輯」按鈕
tabBarController.moreNavigationController.navigationItem.rightBarButtonItem = nil;
任何人都可以幫我嗎?謝謝。
tabBarController.navigationItem.rightBarButtonItem = nil;
希望它會有所幫助。
對不起,它不起作用。 – scottliyq 2012-04-02 15:44:28
@scottliyq它不工作,那麼爲什麼你接受這個答案。? – 2014-07-25 11:27:03
請在您的viewDidLoad
中添加導航代表。
self.navigationController.delegate = self;
首先,設置moreNavigationController的委託。
moreNavigationController.delegate = self
然後你就可以更改導航項目在此委託方法:
func navigationController(_ navigationController: UINavigationController, willShow viewController: UIViewController, animated: Bool) {
// remove edit button in 'more' table view
navigationController.navigationBar.topItem?.rightBarButtonItem = nil
}
你總是可以隱藏它,然後禁用它像這樣:
self.tabBarController?.moreNavigationController.navigationBar.topItem?.rightBarButtonItem?.tintColor = UIColor.clear
self.tabBarController?.moreNavigationController.navigationBar.topItem?.rightBarButtonItem?.isEnabled = false
更改的UIColor清除使其不可見,然後通過禁用其功能,使其完全無法使用,同時使其不可見。
你有什麼錯誤,然後讓我們知道。它有助於定製前4個選項卡,因此如果刪除「編輯」按鈕,則用戶不會自定義它。所以認爲b4這樣做。 – 2012-04-02 15:00:36
沒有錯誤,但沒有效果。 – scottliyq 2012-04-02 15:05:56
然後,我不確定,但認爲蘋果不允許開發人員這樣做。 Apple拒絕篡改框架政策的應用程序,我的意思是你可以自定義你自己的標籤欄,但不能用蘋果提供的UITabBar – 2012-04-02 15:19:09