Auf dem iPhone und dem iPad muss ich zwei Tasten auf der rechten Seite einer Navigationsleiste präsentieren. Ich tue dies mit dem folgenden Code-Snippet:Ändern der Farben eines UIToolbar + es ist Schaltflächen, wenn in einem Popover-Controller auf dem ipad
UIToolbar *rightBarButtons = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 92, 44.01)];
UIBarButtonItem *send = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction
target:self
action:@selector(send)];
[send setStyle:UIBarButtonItemStyleBordered];
UIBarButtonItem *add = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd
target:self
action:@selector(addRecipe:)];
[add setStyle:UIBarButtonItemStyleBordered];
NSArray *buttons = [[NSArray alloc] initWithObjects:send,add,nil];
[send release];
[add release];
[rightBarButtons setItems:buttons];
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:rightBarButtons];
[buttons release];
[rightBarButtons release];
Auf dem iPhone der Farben sind in Ordnung, und im Querformat auf dem iPad ist es in Ordnung, wenn sie grau sind. Im Hochformat erscheint die Ansicht jedoch innerhalb eines Popover-Controllers, der eine dunkelschwarze/blaue Farbe hat. Meine Schaltflächen und die Symbolleiste werden standardmäßig grau angezeigt.
Wie kann ich die Symbolleistenschaltflächen übereinstimmen? Wenn Sie den obigen Hack nicht benutzen und nur eine Taste als normal präsentieren, wird die Farbänderung gehandhabt und ich denke, ich muss diese Farbänderung nur manuell implementieren, das Problem ist, dass ich die Farbe gar nicht ändern kann.