在我的應用程序,在iOS 4的導航欄正常工作dissappeared開始的iOS 5,這是我想通引起的問題:我是在RootViewController的viewWillAppear中去除的方法子視圖:的iOS 5 UINavigationBar的移除子視圖(圖像子視圖)刪除導航欄
for(UIView* view in self.navigationController.navigationBar.subviews)
{
if ([view isKindOfClass:[UILabel class]])
{
[view removeFromSuperview];
}
if([view isKindOfClass:[UIImageView class]])
{
[view removeFromSuperview];
}
}
我這樣做是因爲第二個視圖控制器,我推到導航控制器添加的圖像和標籤導航欄,我必須刪除當視圖彈出。在iOS 5中,上面的代碼刪除了導航條。如何解決這個問題或正確的方式來支持iOS4和iOS5?
是的,這在技術上是可行的,但是如果您或其他人以後需要回來,您的代碼會變得不那麼容易理解。您有可能無法有效地閱讀和跟蹤您的代碼正在做什麼。至少使這些標籤常量可以幫助您查看要刪除的內容。 – RPeck
您可以使用下面的代碼簡單地刪除子視圖 [(UILabel *)[self.navigationController.navigationBar viewWithTag:yourViewTag] removeFromSuperview]; – Himanshu