2009-11-22 50 views
0

我想包括分段控制導航項目與靈活的space.bcos它有2個控制..我想在中心....我試着按照..你會幫助嗎? ...線...將self.navigationItem.rightBarButtonItem支持數組?

self.navigationItem.rightBarButtonItem = [NSArray arrayWithObjects:segmentBarItem,flexibleSpaceButtonItem,nil]; 

給出錯誤?

UIBarButtonItem *segmentBarItem = [[UIBarButtonItem alloc] 
initWithCustomView:segmentedControl]; 

[segmentedControl release]; 

UIBarButtonItem *flexibleSpaceButtonItem = [[UIBarButtonItem alloc] 
    initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace 
target:nil action:nil]; 

self.navigationItem.rightBarButtonItem = [NSArray arrayWithObjects:segmentBarItem,flexibleSpaceButtonItem,nil]; 

回答

3

我認爲你的問題的目標是添加多個按鈕到正確的酒吧按鈕項目?

如果你能這樣做......

UIToolbar* tools = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 100, 45)]; 
     [tools setTintColor:[self.navigationController.navigationBar tintColor]]; 
     NSMutableArray* buttons = [[NSMutableArray alloc] initWithCapacity:2]; 

     UIBarButtonItem *segmentBarItem = [[UIBarButtonItem alloc] 
     initWithCustomView:segmentedControl]; 
     [segmentedControl release]; 

     UIBarButtonItem *flexibleSpaceButtonItem =[[UIBarButtonItem alloc] 
     initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil 
     action:nil]; 

     [buttons addObject:flexibleSpaceButtonItem]; 
     [flexibleSpaceButtonItem release]; 

     [buttons addObject:segmentBarItem]; 
     [segmentBarItem release]; 



     [tools setItems:buttons animated:NO]; 

     [buttons release]; 

     UIBarButtonItem *myBtn = [[UIBarButtonItem alloc] initWithCustomView:tools]; 

     self.navigationItem.rightBarButtonItem = myBtn; 

     [myBtn release]; 
     [tools release]; 

不要忘記投票是否能解決烏爾問題....;)

0

這是不行的; rightBarButtonItem的類型爲UIBarButtonItem *,並且您正試圖將NSArray *填入其中。據我所知,沒有標準的方法來把一個額外的按鈕放到導航欄中。