2009-10-31 2 views
7

Ich verwende eine TTPhotoViewController Unterklasse von der Three20 Bibliothek für Bilder von einer Web-Position zeigt. Die Bilder laden sich gut, aber die Navigationsleiste und die Symbolleiste werden mit dem Standardfarbton angezeigt. Ich verwende eine Nav-Leiste mit einem benutzerdefinierten Farbton (in der MainWindow.xib festgelegt)Three20 Bibliothek - Unterklasse von TTPhotoViewController hat eine undurchsichtige Navigationsleiste

Ich versuchte diese Dinge, um es schwarz durchscheinende Balken zu zeigen, aber keiner von diesen scheint zu funktionieren.

  1. die Navigationsleiste Stil schwarz transluzent in MainWindow.xib Einstellung
  2. die Navigationsleiste Stil schwarze undurchsichtigen in MainWindow.xib Einstellung
  3. Explizit den navigationbar Stil schwarz transluzent Einstellung in der viewWillAppear der Unterklasse:

kann mir bitte jemand sagen, warum dies geschehen würde, und wie kann ich dieses Problem lösen? Vielen Dank.

Antwort

15

EDIT: Ich bin ein Idiot. Sie versuchen, den Stil, nicht die Farbe einzustellen. Das Folgende ist alles gültige Informationen, aber was Sie fast sicher wollen, ist die navigationBarStyle Eigenschaft defined by TTViewController. Es tut uns leid.


Three20 hat einen „Stylesheet“ Mechanismus eingebaut sein, der beabsichtigte Zweck es ist, die Sie speichern von Farbton Farben einstellen zu müssen, Schriften, etc. auf all die vielen UI-Objekte in Ihrer Anwendung, über und über. Wenn Sie jedoch nicht wissen, dass es da ist, landen Sie genau in dieser Situation. Was Sie tun müssen, ist:

Erstellen einer Unterklasse von TTDefaultStyleSheet in der Anwendung, und außer Kraft setzen zumindest diese Methode:

- (UIColor*)navigationBarTintColor { 
    return RGBCOLOR(119, 140, 168); 
} 

Irgendwo in Ihrer Anwendung (wahrscheinlich applicationDidFinishLaunching:), anrufen:

[TTStyleSheet setGlobalStyleSheet: 
    [[[YourStyleSheetClass alloc] init] autorelease]]; 

(Möglicherweise möchten Sie in TTDefaultStyleSheet.h suchen, da dort eine ganze Reihe anderer Stile definiert sind, die vom Framework verwendet werden und die Sie möglicherweise auch überschreiben möchten.)