IOS開發storyboard建立controller黑屏以及控制元件不顯示問題。
阿新 • • 發佈:2019-02-18
其實我覺得StoryBoard真的很沒用,除非是特別簡單就一兩個頁面,而且頁面樣式簡單的還比較方便,稍微複雜點,就不好用了。推薦刪掉StoryBoard,用xib來自定義所有的view。
今天用了下StoryBoard,建了一個頁面A,一個頁面B,A點選按鈕可以到B頁面,由於不是用的StoryBoard拖得segue,結果發現跳轉到B後是黑屏。
一看才發現,原來在StoryBoard建立好viewcontroller後想到與已經生成了,如果在跳轉時再alloc一個,那麼這時就是又生成了一個B,跟StoryBoard是沒有關係的,而controller預設的背景就是黑色的,所以是黑屏。
解決方法,就是將StoryBoard中的controller和例項化的想關聯。如下:
- (IBAction)tranAction:(id)sender { UIStoryboard *main=[UIStoryboard storyboardWithName:@"Main" bundle:nil]; BViewController *b=[main instantiateViewControllerWithIdentifier:@"B"]; // b.transStr=^(NSString *str){ // _ALabel.text=str; // }; [b setTitle:@"B"]; [self.navigationController pushViewController:b animated:YES]; }
StoryBoard中的controller也要相應的設定好Identifier。
這樣就可以