Frage

Ich bin nicht sicher, was im tut falsch. Der Dateiname korrekt ist, wird der Stil auf Ebene gesetzt. Aber Im immer eine Bank weißen Kasten die Größe meines Bildes. Im mit UINavigationController.

Bitte helfen und danken Sie im Voraus danken.

** Übrigens, ich bin sorta neu in Objective c so nicht auf mir zu hart sein. ;)

 UIBarButtonItem *toolbarChannelGuideButton = [[UIBarButtonItem alloc]
     initWithImage:[UIImage imageNamed:@"channel-guide-button.png"]
     style:UIBarButtonItemStylePlain
     target:self
     action:@selector(action:)];


self.toolbarItems = [NSArray arrayWithObjects:toolbarChannelGuideButton, nil];
[toolbarChannelGuideButton release];
War es hilfreich?

Lösung

Der Grund, es wurde, war die weiße Maske zu schaffen, weil der UIToolBar tut ihn durch Standardfarbbilder ermöglichen. Die Art und Weise, dies zu erreichen ist ein UIImage Schaffung dann eine UIButton zu diesem Bild zuordnen. Dann erstellen Sie ein UIBarButton initWithCustomView mit dem UIButton wie die Ansicht individuellen verwenden.

Code:

     //Load the image   
     UIImage *buttonImage = [UIImage imageNamed:@"your-image.png"];

     //create the button and assign the image
     UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
     [button setImage:buttonImage forState:UIControlStateNormal];

     //sets the frame of the button to the size of the image
     button.frame = CGRectMake(0, 0, buttonImage.size.width, buttonImage.size.height);

     //creates a UIBarButtonItem with the button as a custom view
     UIBarButtonItem *customBarItem = [[UIBarButtonItem alloc] initWithCustomView:button];



     self.toolbarItems = [NSArray arrayWithObjects:customBarItem, nil];
     [customBarItem release];

Andere Tipps

Beginnend mit iOS 7 Sie können unten verwenden:

 UIImage *image = [[UIImage imageNamed:@"myImage.png"];
 imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
 UIBarButtonItem *button = [[UIBarButtonItem alloc] initWithImage:image style:UIBarButtonItemStylePlain target:self action:@selector(YOUR_METHOD:)];

Does Kanal-guide-button.png gehört in Projekt?

Sie können dies ausbricht wie folgt aus:

UIImage *image = [UIImage imageNamed:@"channel-guide-button.png"];
NSLog(@" image = %p", image);
UIBarButtonItem *toolbarChannelGuideButton = [[UIBarButtonItem alloc]
     initWithImage:image
     style:UIBarButtonItemStylePlain
     target:self
     action:@selector(action:)];

oder einfach nur überprüfen Sie Ihr Projekt; -)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top