//定义一个随机颜色的分类
#import "UIColor+RandomColor.h"
@implementation UIColor (RandomColor)
+(UIColor *)randomColor
{
CGFloat x=arc4random()%256/255.0;
CGFloat y=arc4random()%256/255.0;
CGFloat z=arc4random()%256/255.0;
UIColor *randomColor=[UIColor colorWithRed:x green:y blue:z alpha:1];
return randomColor;
}
@end
#import "AppDelegate.h"
#import "UIColor+RandomColor.h"
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.window.backgroundColor = [UIColor cyanColor];
[self.window makeKeyAndVisible];
//循环生成视图
for (int i =0 ; i<30; i++) {
UIView* view = [[UIView alloc]initWithFrame:CGRectMake(10, 20, 300-i*10, 300-i*10)];
view.backgroundColor = [UIColor randomColor];;
[self.window addSubview:view];
view.layer.cornerRadius=(300-i*10)/2;
[view release];
}
//定时器每0.1秒变换颜色
[NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(timeFire) userInfo:nil repeats:YES];
return YES;
}
-(void)timeFire
{
NSArray *arr=self.window.subviews;
for (int i=0; i<29; i++) {
UIView *aview=[arr objectAtIndex:i];
UIView *bview=[arr objectAtIndex:(i+1)];
aview.backgroundColor=bview.backgroundColor;
}
((UIView*)[arr objectAtIndex:29]).backgroundColor=[UIColor randomColor];
}