• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Einige Blicke in fremde Welten dürft Ihr nun bestaunen und darüber abstimmen, welche davon Euch am meisten gefällt: hier geht es lang für Euer Voting --> Klick

Probleme mit Appeareance

Xean

Granny Smith
Registriert
09.02.12
Beiträge
16
Hallo Leute,

zurzeit versuche ich meine App etwas gestalterisch zu verschönern. Da sie Auf iOS5.+ laufen wird, bietet sich die Geschichte mit Appeareance an.

Mein Code sieht einfach aus:
Code:
UIImage* navigationBar = [[UIImage imageNamed:@"navigationbar.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 10, 0, 10)];
UIImage* toolbar = [[UIImage imageNamed:@"toolbar.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 10, 0, 10)];
UIImage* button = [[UIImage imageNamed:@"button.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 8, 0, 8)];
UIImage* buttonSelected = [[UIImage imageNamed:@"button_selected.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 8, 0, 8)];
UIImage* backbutton = [[UIImage imageNamed:@"backButton.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 14, 0, 8)];
UIImage* backbuttonSelected = [[UIImage imageNamed:@"backButton_selected.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 14, 0, 8)];

[[UIBarButtonItem appearance] setBackgroundImage:button 
          forState:UIControlStateNormal 
           barMetrics:UIBarMetricsDefault];
[[UIBarButtonItem appearance] setBackgroundImage:button 
          forState:UIControlStateNormal 
           barMetrics:UIBarMetricsLandscapePhone];
[[UIBarButtonItem appearance] setBackgroundImage:buttonSelected 
          forState:UIControlStateSelected 
           barMetrics:UIBarMetricsDefault];
[[UIBarButtonItem appearance] setBackgroundImage:buttonSelected 
          forState:UIControlStateSelected 
           barMetrics:UIBarMetricsLandscapePhone];


[[UIBarButtonItem appearance] setBackButtonBackgroundImage:backbutton 
              forState:UIControlStateNormal 
            barMetrics:UIBarMetricsDefault];
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:backbutton 
              forState:UIControlStateNormal 
            barMetrics:UIBarMetricsLandscapePhone];
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:backbuttonSelected 
              forState:UIControlStateSelected 
            barMetrics:UIBarMetricsDefault];
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:backbuttonSelected 
              forState:UIControlStateSelected 
            barMetrics:UIBarMetricsLandscapePhone];

[[UINavigationBar appearance] setBackgroundImage:navigationBar 
           forBarMetrics:UIBarMetricsDefault];
[[UINavigationBar appearance] setBackgroundImage:navigationBar 
           forBarMetrics:UIBarMetricsLandscapePhone];
[[UIToolbar appearance] setBackgroundImage:toolbar 
      forToolbarPosition:UIToolbarPositionAny 
        barMetrics:UIBarMetricsDefault];
[[UIToolbar appearance] setBackgroundImage:toolbar 
      forToolbarPosition:UIToolbarPositionAny 
        barMetrics:UIBarMetricsLandscapePhone];


Zu meinen Problemen:
1. Der Backbutton in einer Navigationbar: Beim State: Normal passt alles. Nur das Bild für State: Selected wird nicht angezeigt. Stattdessen wird das StateNormal-Bild einfach dunkler.

2. Buttons in der Toolbar: Da ist das selbe Problem. Außerdem sind die Buttons zu breit. Das sind ja auch UIBarButtonItem. In der Navigationbar werden sie, dank des Edge Insets richtig da gestellt. In der Toolbar werden sie (gefühlt) halbiert und auseinander gezogen.

Kann mir jemand verraten warum das so passiert? Was mach ich falsch?

Mit freundlichen Grüßen,
Xean

PS: ich habe sonst an keiner anderen Stelle in meinem Code Farbe oder Hintergrundbilder verändert