從相機跳轉到另一個VC,導航欄遺失。

這是我的一個app中出現的bug,我今天終于找回這個迷路的導航欄,它再次回到我的懷抱。

Boos要求:從相機拍完一張照片之后,不要dismiss回當前VC,(因為如果dismiss回當前頁面它回停留2秒,這樣的視圖效果特別丑)而是要立馬跳轉到另一個VC。于是我就對相機協議進行了這樣的操作

直接用picker push到另一個VC (picker是繼承導航的,所以可以直接push過去)

代碼如下:

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary*)info{

self.image1? = info[UIImagePickerControllerOriginalImage];

SelectViewController *selectVC = [[SelectViewController alloc]init];

selectVC.selectImage = self.image1;

[picker pushViewController:selectVC animated:NO];

}

跳轉到另一個VC之后就出現了一個嚴重的bug,就是在另一個頁面我的導航欄不見了。我試了很多的辦法,都沒有找回。最后在我的老師的幫助下,我找回了這個迷路的導航欄。在相機中,導航欄的狀態是隱藏的。所以在你跳轉過去之后的VC中你要解開導航欄的隱藏。我這里出現的問題是導航欄的位置上升了。

//? ? 調試導航欄

NSLog(@"--------------123%@", self.navigationController.navigationBar);

self.navigationController.navigationBar.frame=CGRectMake(0, 0, ScreenW, 64);

//? ? 重新布局一下

[self.navigationController.navigationBar setNeedsLayout];

self.navigationController.navigationBarHidden = NO;

NSLog(@"--------------12356%@", self.navigationController.navigationBar);


看到第一次打印出來的frame值,這個導航欄的位置上升了。所以我用代碼重新寫了他的frame值。然后重新布局了一下。遺失的導航欄就成功的被我找回了。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容