elementi della barra degli strumenti multipli in una singola riga
-
10-10-2019 - |
Domanda
voglio solo per creare più elementi della barra degli strumenti in una singola riga qui quello che ho fatto ...
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];
}
, ma non sta mostrando nulla nella barra degli strumenti ...... qualche suggerimento ...?
Soluzione
Qual è il secondo ciclo for per?
Hai già un array di oggetti (barButtonArray).
Sostituire il secondo ciclo for con questo:
[toolbar setItems:barButtonArray animated:NO];
Altri suggerimenti
Nel suo ultimo ciclo for si sta redeclaring la matrice oggetti e chiamando [setItems della barra degli strumenti:] più e più volte. Basta fare questo:
[toolbar setItems:barButtonItems animated:NO];
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow