網頁

2012年9月1日 星期六

iOS開發筆記-加button到NavigationBar

最近想做如下圖這個效果,但不想用UINavigationController,又想要有點它的效果,最後發現可以直接使用NavigationBar


我的需求是一個ViewController,用presentModalViewController加入,最後需要一個button去關閉,而這個bar也要可以隱藏,所以button要跟bar一體,不想用UINavigationController是因為它會佔一個空間(也許是我個人不懂,還沒很徹底的了解它)

可以直接使用NavigationBar,但要加上如圖的button並不是很直覺,先加一個UINavigationItem,再加進bar的items中,再initial一個UIBarButtonItem,就可以放入bar.topItem中,看是要右邊還左邊,我個人是放左邊,程式如下


UINavigationBar *__bar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 0, 320, 70)];
__bar.barStyle = UIBarStyleBlack;
__bar.translucent = YES;

UINavigationItem *item = [[UINavigationItem alloc] init];
__bar.items = [NSArray arrayWithObject:item];
    
UIBarButtonItem *item1 = [[[UIBarButtonItem alloc] initWithTitle:@"關閉"
                                      style:UIBarButtonItemStyleDone
                                     target:self
                                     action:@selector(close)] autorelease];
__bar.topItem.leftBarButtonItem = item1;


這樣就可以在沒有UINavigationController的狀況下,加入該有的bar及button


參考網址
Add items to NavigationBar (Not using UINavigationController)

沒有留言:

張貼留言