我有一個UIViewController,帶有navigationController,並隱藏後退按鈕。該視圖控制器推其他的UIViewController,並在這個新的viewController的viewDidLoad中,我做的:後退按鈕不會出現在導航控制器
self.navigationItem.hidesBackButton = FALSE;
但後退按鈕不happear。爲什麼?當我傳遞給iOS 4.2的新Xcode版本時,這是行不通的,因爲在最新版本中,它一切正常。
我有一個UIViewController,帶有navigationController,並隱藏後退按鈕。該視圖控制器推其他的UIViewController,並在這個新的viewController的viewDidLoad中,我做的:後退按鈕不會出現在導航控制器
self.navigationItem.hidesBackButton = FALSE;
但後退按鈕不happear。爲什麼?當我傳遞給iOS 4.2的新Xcode版本時,這是行不通的,因爲在最新版本中,它一切正常。
是否有前導航控制器(在導航欄上)的標題?有時,如果沒有標題,則第一個後退按鈕會自動隱藏。
這是「正確」的答案 - iOS 3.x是「buggy」/與後來的iOS版本不一致。在iOS 3.x中,後退按鈕是不可見的,但如果您嘗試點擊它應該在的位置,它實際上會將您帶回。這種說,這是一個真正的界面小故障/錯誤在iOS 3.x ... – Jonny 2011-11-16 05:23:02
我傾向於同意Syoleen,應該有一個標題文本設置爲導航控制器,您可以將標題設置爲@「」(即那裏有一個空間),如果你不希望它顯示但仍然活躍。
我發現這個伎倆錯誤的硬性方式。但我不會建議使用它,因爲用戶失去了iPhone界面的直觀性。 – 2010-11-26 00:59:25
如果您使用界面生成器,檢查連接到導航控制器..爲了清楚起見,在IB視圖控制器內的導航項目對象:
導航控制器||東西視圖控制器||導航項目
在檢查器的屬性選項卡上,應該有一個名爲「後退按鈕」的文本字段。確保它有諸如「返回」之類的內容。
在列出第一個ViewController後,它將通過堆棧傳播。
您也可以編程設置後退按鈕標題。 – 2010-11-30 17:19:58
那麼,我有同樣的問題運行iOS 4.2。後退按鈕將拒絕出現。在自動繪製到風景後,它就會出現。我的解決辦法是做到以下幾點 - 這解決了問題...或者我們應該說,它的一個解決辦法;)
- (void)viewDidLoad
{
[super viewDidLoad];
checkHolder.image = anImage;
self.navigationItem.hidesBackButton = YES;
}
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
self.navigationItem.hidesBackButton = NO;
}
我在iOS 4.2中遇到同樣的問題,你的破解修正了它。 iOS 4.3到5.0並不需要這個破解。我還沒有在iOS上測試少於4.2,所以我不能告訴這個問題是否獨佔4.2。 – JoJo 2011-10-29 00:53:47
您可以發佈)的代碼使用推視圖控制器和b)`viewDidLoad中: `在你的新視圖控制器中。 – Fred 2010-11-25 22:48:57