2016年2月4日 星期四

iOS tips - xib subview overlay navigation bar

最近遇到一個挺怪的問題,用xib產生的view controller在被某個view controller以push方式呈現之後,xib中的一些物件會重疊到navigation bar,像是下面這樣



查詢stackoverflow後,找到一個解法

- (void) viewDidLayoutSubviews {
    CGRect viewBounds = self.view.bounds;
   
CGFloat topBarOffset = self.topLayoutGuide.length;
    viewBounds.
origin.y = topBarOffset * -1;
   
self.view.bounds = viewBounds;
}

看起來是重新計算topbar的offset來重新給會出問題的VC新的bounds,加了這一段後,code變得挺醜,但的確是能解決遇到的問題 XD


沒有留言:

張貼留言