bibliothèque Three20 - sous-classe de TTPhotoViewController a une barre de navigation opaque

StackOverflow https://stackoverflow.com/questions/1653767

  •  11-09-2019
  •  | 
  •  

Question

J'utilise une sous-classe de TTPhotoViewController de la bibliothèque Three20 pour montrer des images à partir d'un emplacement web. Les images chargent très bien, mais la barre de navigation et la barre d'outils apparaissent avec la teinte par défaut. J'utilise une barre de navigation avec une teinte personnalisée (définie dans le MainWindow.xib)

J'ai essayé ces choses pour l'obtenir pour montrer des barres noires translucides, mais aucun d'entre eux semblent fonctionner.

  1. définir le style de la barre de navigation noir translucide dans MainWindow.xib
  2. définir le style de la barre de navigation noire opaque dans MainWindow.xib
  3. réglage du style Explicitement à translucide barre de navigation noire dans viewWillAppear de la sous-classe:

Quelqu'un peut-il s'il vous plaît me dire pourquoi cela se passerait-il et comment je peux résoudre ce problème? Merci.

Était-ce utile?

La solution

EDIT: Je suis un idiot. Vous essayez de régler la de style , pas la couleur. Le dessous est toutes les informations valides, mais ce que vous voulez certainement est la propriété navigationBarStyle défini par TTViewController . Désolé.


Three20 a un mécanisme de « feuille de style » construit en elle, le but recherché est de vous éviter d'avoir à définir des couleurs de teinte, les polices, etc. sur tous les nombreux objets de l'interface utilisateur dans votre application, et encore. Toutefois, si vous le faites, vous finissez le savez pas qu'il est là dans exactement cette situation. Ce que vous devez faire est:

Créer une sous-classe de TTDefaultStyleSheet dans votre application, et passer outre au moins cette méthode:

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

Someplace dans votre application (probablement applicationDidFinishLaunching:), appelez:

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

(Vous pouvez naviguer autour TTDefaultStyleSheet.h , parce qu'il ya un tas d'autres styles définis là-bas qui sont utilisés par le cadre, et que vous pouvez également remplacer.)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top