我最近在我的应用程序中集成了three20,并尝试覆盖TTWebController中的默认工具栏颜色。
在TTWebController.m中:118我看到这是设置工具栏的tintColor:
_toolbar.tintColor = TTSTYLEVAR(toolbarTintColor);
所以我创建了自己的样式表,它继承了TTDefaultStyleSheet并覆盖了toolbarTintColor
FooStyleSheet.h:
#import <Three20Style/Three20Style.h>
#import <Three20Style/TTStyleSheet.h>
#import <Three20Style/TTDefaultStyleSheet.h>
@interface FooStyleSheet : TTDefaultStyleSheet
@property (nonatomic, readonly) UIColor* toolbarTintColor;
@end
FooStyleSheet.m:
#import "FooStyleSheet.h"
@implementation RaptrStyleSheet
- (UIColor*)toolbarTintColor {
return RGBCOLOR(0, 0, 0); // should override TTDefaultStyleSheet
}
@end
并在我的应用程序中:didFinishLaunchingWithOptions:我设置了我的默认样式表
[TTStyleSheet setGlobalStyleSheet:[[[FooStyleSheet alloc] init] autorelease]];
但是当我查看TTWebController时,它不会继承我的tintColor。如果我直接编辑TTDefaultStyleSheet.m:
- (UIColor*)toolbarTintColor {
return [UIColor blackColor];
}
它按预期工作。
我有什么东西可以忽略我的风格吗?
感谢,
范数
答案 0 :(得分:0)
在你的头文件中,@ property是不必要的 - 删除它会解决你的问题吗?