Three20库 - TTPhotoViewController的子类有一个不透明的导航栏
问题描述:
我使用Three20库中的TTPhotoViewController子类来显示来自Web位置的图像。图像加载正常,但导航栏和工具栏显示为默认色调。我正在使用带有自定义色调的导航栏(在MainWindow.xib中设置)Three20库 - TTPhotoViewController的子类有一个不透明的导航栏
我试过这些东西让它显示黑色半透明条,但这些看起来都不起作用。
- 导航栏样式设置为黑色半透明的MainWindow.xib
- 导航栏样式设置为黑色不透明的MainWindow.xib中
- 显式设置导航栏风格,以黑色半透明的子类的viewWillAppear中:
有人可以告诉我为什么会发生这种情况,我该如何解决这个问题?谢谢。
答
编辑:我是个白痴。您正试图设置款式,而不是颜色。以下是所有有效信息,但您几乎可以肯定需要的是navigationBarStyle
属性defined by TTViewController
。抱歉。
Three20有一个“样式表”机制内置到它,它预期的目的是为了节省您不必设置都在你的应用程序中的许多UI对象的色调颜色,字体等,一遍又一遍。但是,如果你不知道它在那里,那么最终会出现这种情况。你需要做的是:
在应用程序中创建的TTDefaultStyleSheet
一个子类,并覆盖至少这个方法:
- (UIColor*)navigationBarTintColor {
return RGBCOLOR(119, 140, 168);
}
的Someplace在您的应用程序(可能applicationDidFinishLaunching:
),请致电:
[TTStyleSheet setGlobalStyleSheet:
[[[YourStyleSheetClass alloc] init] autorelease]];
(您可能想浏览TTDefaultStyleSheet.h
,因为那里定义了一大堆由框架使用的其他样式,并且您可能还想覆盖。)