我的application:DidFinishLaunchingWithOptions:
中有以下代码,我尝试设置标签栏色调颜色:
UIColor *colour = [UAColors getSeasonalColour];
self.tabBarController.tabBar.tintColor = colour; // SIGABORT here
[colour release];
getSeasonalColours
是:
+(UIColor *)getSeasonalColour {
UIColor *seasonalColour = 0;
if ( [UADates isSpring:[NSDate date]] )
seasonalColour = [UIColor greenColor];
else if ( [UADates isSummer:[NSDate date]] )
seasonalColour = [UIColor blueColor];
else if ( [UADates isAutumn:[NSDate date]] )
seasonalColour = [UIColor orangeColor];
else if ( [UADates isWinter:[NSDate date]] )
seasonalColour = [UIColor redColor];
else
seasonalColour = [UIColor blackColor];
return seasonalColour;
}
现在UADates
只是一个对isWinter
返回true的存根。
为什么会导致崩溃? getSeasonalColours时,使用相同的tintColor
非常正常。
答案 0 :(得分:3)
设置标签栏的色调颜色仅适用于从iOS 5开始(因此会在iOS 4及更早版本上崩溃),而导航栏色调颜色自iPhone OS 2.0以来就已存在。
答案 1 :(得分:2)
[colour release]
不应该在那里,因为你的颜色都是自动释放的。你确定 不是崩溃的行吗?