2012-05-05 35 views
1

我正在嘗試以編程方式在ABPersonViewController的子類中創建一個工具欄。 這是我所做的。以編程方式設置UIToolBar

UIBarButtonItem *customItem = [[UIBarButtonItem alloc] initWithTitle:@"Item" style:UIBarButtonItemStyleBordered target:self  action:@selector(onToolbarTapped:)]; 
NSArray *items = [NSArray arrayWithObjects: customItem, nil]; 
[self.navigationController.toolbar setItems:items animated:NO]; 
//[self setToolbarItems:[NSArray arrayWithObject:items]]; 
self.navigationController.toolbar.barStyle = UIBarStyleBlackOpaque; 
[self.navigationController setToolbarHidden:NO animated:YES]; 

工具欄沒有出現。我在這裏做錯了什麼。

編輯:我已經編輯我的代碼如下

UIToolbar *toolbar = [[[UIToolbar alloc] init]autorelease]; 
toolbar.barStyle = UIBarStyleBlackOpaque; 
toolbar.tintColor = [UIColor blackColor]; 
toolbar.frame = CGRectMake(0, 372, self.view.frame.size.width, 45); 
UIBarButtonItem *customItem = [[UIBarButtonItem alloc] initWithTitle:unblockContact style:UIBarButtonItemStyleBordered target:self  action:@selector(onToolbarTapped:)]; 
customItem.tintColor = [UIColor blackColor]; 
NSArray *items = [NSArray arrayWithObjects:customItem, nil]; 
[toolbar setItems:items animated:NO]; 
[self.view addSubview:toolbar]; 
[customItem release]; 

我怎樣才能讓barbuttonitem佔據整個工具欄。用戶不應該覺得工具欄上有一個barbuttonitem。我可以這樣做嗎,或者有另一種方法嗎? 需要幫助。謝謝。

+0

它產生一個錯誤或者乾脆你是不是達到了查看工具欄或buttonItem? – Jaume

+0

截至目前,現在生成的錯誤。但工具欄沒有出現。 –

回答

1

UIToolbar是的UIView的子類,你應該把它添加任何其他視圖,下面的方法是什麼我成功地使用,

UIToolbar *toolbar = [[UIToolbar alloc] init]; 
toolbar.frame = CGRectMake(0, 0, self.view.frame.size.width, 45); 
NSMutableArray *items = [[NSMutableArray alloc] init]; 
[items addObject:[[UIBarButtonItem alloc] initWithObjects...]]; 
[toolbar setItems:items animated:NO]; 
[self.view addSubview:toolbar]; 
+0

我只是在工具欄中有一個按鈕。所以它應該填充整個工具欄 –

+0

,所以你現在的工具欄只有一個按鈕,但其方面是默認的,對嗎? – Jaume

+0

是的。我需要一個帶有一個barbuttonitem的工具欄,它填充整個工具欄。人們不應該能夠區分barbuttonitem從工具欄 –