2010-12-15 3 views
0

я просто хочу создать несколько элементов панели инструментов в одной строке здесь то, что я сделал ...несколько элементов панели инструментов в одной строке

NSMutableArray *barButtonArray = [[NSMutableArray alloc] init]; 
for (int i=0; i<[[State getSubCategoryids] count]; i++) { 

    NSString *nameString = [NSString stringWithFormat:@"%@",[[State getSubCategoryNames] objectAtIndex:i]]; 
    NSLog(@"nameString: %@", nameString); 
    UIBarButtonItem *customBarButton = [[UIBarButtonItem alloc] initWithTitle:nameString style:UIBarButtonItemStyleBordered target:nil action:@selector(productImages)]; 
    UIBarButtonItem *flexItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace 
                       target:nil 
                       action:nil]; 
    [barButtonArray addObject:customBarButton]; 
    [barButtonArray addObject:flexItem]; 

    [flexItem release]; 
    [customBarButton release]; 


} 




for (int i = 0; i<[barButtonArray count]; i++) { 
    NSLog(@"barbutton items for loop"); 
    NSArray *items = [NSArray arrayWithObjects:[barButtonArray objectAtIndex:i],nil]; 
    NSLog(@"items: %@", items); 
    [toolbar setItems:items animated:NO]; 
} 

, но он не показывает ничего в панели инструментов ...... какие-либо предложения...?

+0

вы получаете какие-либо ошибки? – Linuxmint

ответ

0

Для чего нужен второй цикл?
У вас уже есть массив элементов (barButtonArray).
Заменить второй для цикла с этим:

[toolbar setItems:barButtonArray animated:NO]; 
0

В последнем цикле for вы обновляете массив элементов и снова вызываете [toolbar setItems:]. Просто выполните это:

[toolbar setItems:barButtonItems animated:NO];