国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

UIView動畫設置

2019-11-14 19:17:08
字體:
來源:轉載
供稿:網友
創建一個紅綠燈,紅、綠每5秒變化一次顏色,要求變亮的燈(色塊)面積也要同時變大。黃燈閃亮3秒鐘(0.9秒亮黃,0.1秒亮黑),點擊按鈕開始執行。
//AppDelegate.h#import <UIKit/UIKit.h>@interface AppDelegate : UIResponder <UIapplicationDelegate>@PRoperty (strong, nonatomic) UIWindow *window;@end
//AppDelegate.m//  AppDelegate.m//  traffic light////  Created by apple on 15/4/9.//  Copyright (c) 2015年 hecheng. All rights reserved.//#import "AppDelegate.h"@interface AppDelegate (){    UIView *_redView;    UIView *_greenView;    UIView *_yellowView;    CGFloat x;    CGFloat y;    }@end@implementation AppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {        //計算屏幕尺寸    UIScreen *screens=[UIScreen mainScreen];    CGRect rect=screens.bounds;        //計算屏幕中心位置    x=rect.size.width/2;    y=rect.size.height/2;    self.window=[[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds] ;    self.window.backgroundColor=[UIColor whiteColor];    [self.window makeKeyAndVisible];        //設置紅燈,初始化顏色為黑色    _redView=[[UIView alloc] initWithFrame:CGRectMake(0, 0, 50, 50)];    _redView.backgroundColor=[UIColor blackColor];    [self.window addSubview:_redView];    _redView.center=CGPointMake(x-100, y);        //設置綠燈,初始化顏色為黑色    _greenView=[[UIView alloc] initWithFrame:CGRectMake(0, 0, 50, 50)];    _greenView.backgroundColor=[UIColor blackColor];    [self.window addSubview:_greenView];    _greenView.center=CGPointMake(x, y);        //設置黃燈,初始化顏色為黑色    _yellowView=[[UIView alloc] initWithFrame:CGRectMake(0, 0, 50, 50)];    _yellowView.backgroundColor=[UIColor blackColor];    [self.window addSubview:_yellowView];    _yellowView.center=CGPointMake(x+100, y);        //設置按鈕    UIButton *btn=[UIButton buttonWithType:UIButtonTypeSystem];    [btn setTitle:@"啟動" forState:UIControlStateNormal];    btn.frame=CGRectMake(0, 0, 50, 50);    btn.center=CGPointMake(x, y-80);    [btn addTarget:self action:@selector(didClicked) forControlEvents:UIControlEventTouchUpInside];    btn.backgroundColor=[UIColor blackColor];    [self.window addSubview:btn];    return YES;    }- (void)animationWillStart:(NSString *)animationID context:(void *)context {    NSLog(@"%@", animationID);    NSLog(@"%s", __func__);}- (void)animationDidStop:(NSString *)animationID finished:(NSNumber *)finished context:(void *)context {    if ([animationID isEqualToString:@"red"]) {        [UIView beginAnimations:@"green" context:NULL];        [UIView setAnimationDelay:5];        _redView.bounds=CGRectMake(0, 0, 50, 50);        _greenView.bounds=CGRectMake(0, 0, 100, 100);        _greenView.backgroundColor=[UIColor greenColor];        _redView.backgroundColor=[UIColor blackColor];        [UIView setAnimationDelegate:self];        [UIView setAnimationWillStartSelector:@selector(animationWillStart:context:)];        [UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];        [UIView commitAnimations];    }    else if ([animationID isEqualToString:@"green"]) {        [UIView beginAnimations:@"yellow" context:NULL];        [UIView setAnimationDelay:5];        _greenView.bounds=CGRectMake(0, 0, 50, 50);        _yellowView.bounds=CGRectMake(0, 0, 100, 100);        _greenView.backgroundColor=[UIColor blackColor];        _yellowView.backgroundColor=[UIColor yellowColor];        [UIView setAnimationDelegate:self];        [UIView setAnimationWillStartSelector:@selector(animationWillStart:context:)];        [UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];        [UIView commitAnimations];            }    else if ([animationID isEqualToString:@"yellow"]) {        [UIView beginAnimations:@"black1" context:NULL];        [UIView setAnimationDelay:0.9];                _yellowView.backgroundColor=[UIColor blackColor];        [UIView setAnimationDelegate:self];        [UIView setAnimationWillStartSelector:@selector(animationWillStart:context:)];        [UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];        [UIView commitAnimations];    }    else if ([animationID isEqualToString:@"black1"]) {        [UIView beginAnimations:@"yellow1" context:NULL];        [UIView setAnimationDelay:0.1];                _yellowView.backgroundColor=[UIColor yellowColor];        [UIView setAnimationDelegate:self];        [UIView setAnimationWillStartSelector:@selector(animationWillStart:context:)];        [UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];        [UIView commitAnimations];    }    else if ([animationID isEqualToString:@"yellow1"]) {        [UIView beginAnimations:@"black2" context:NULL];        [UIView setAnimationDelay:0.9];        _yellowView.backgroundColor=[UIColor blackColor];        [UIView setAnimationDelegate:self];        [UIView setAnimationWillStartSelector:@selector(animationWillStart:context:)];        [UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];        [UIView commitAnimations];    }    else if ([animationID isEqualToString:@"black2"]) {        [UIView beginAnimations:@"yellow2" context:NULL];        [UIView setAnimationDelay:0.1];                _yellowView.backgroundColor=[UIColor yellowColor];        [UIView setAnimationDelegate:self];        [UIView setAnimationWillStartSelector:@selector(animationWillStart:context:)];        [UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];        [UIView commitAnimations];    }    else if ([animationID isEqualToString:@"yellow2"]) {        [UIView beginAnimations:@"black3" context:NULL];        [UIView setAnimationDelay:0.9];        _yellowView.backgroundColor=[UIColor blackColor];//        _redView.backgroundColor=[UIColor redColor];        [UIView setAnimationDelegate:self];        [UIView setAnimationWillStartSelector:@selector(animationWillStart:context:)];        [UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];        [UIView commitAnimations];    }    else if ([animationID isEqualToString:@"black3"]) {        [UIView beginAnimations:@"red" context:NULL];        [UIView setAnimationDelay:0.1];//        _yellowView.backgroundColor=[UIColor blackColor];        _yellowView.bounds=CGRectMake(0, 0, 50, 50);        _redView.bounds=CGRectMake(0, 0, 100, 100);        _redView.backgroundColor=[UIColor redColor];        [UIView setAnimationDelegate:self];        [UIView setAnimationWillStartSelector:@selector(animationWillStart:context:)];        [UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];        [UIView commitAnimations];    }    }//按鈕響應方法- (void)didClicked{    [UIView beginAnimations:@"red" context:NULL];//    [UIView setAnimationDuration:<#(NSTimeInterval)#>]    _redView.backgroundColor=[UIColor redColor];    _redView.bounds=CGRectMake(0, 0, 100, 100);//    _redView.center=CGPointMake(x, y+100);    [UIView setAnimationDelegate:self];    [UIView setAnimationWillStartSelector:@selector(animationWillStart:context:)];    [UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];    [UIView commitAnimations];    }- (void)applicationWillResignActive:(UIApplication *)application {    // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.    // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.}- (void)applicationDidEnterBackground:(UIApplication *)application {    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.}- (void)applicationWillEnterForeground:(UIApplication *)application {    // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.}- (void)applicationDidBecomeActive:(UIApplication *)application {    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.}- (void)applicationWillTerminate:(UIApplication *)application {    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.}@end

 

效果圖如下

要求基本實現


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宣威市| 叶城县| 南郑县| 仁布县| 重庆市| 廉江市| 柳河县| 类乌齐县| 蓝田县| 晋江市| 沾化县| 柳江县| 石门县| 东乡族自治县| 大宁县| 洪湖市| 锡林郭勒盟| 彭州市| 江陵县| 乌恰县| 江华| 西乌| 苍梧县| 旬邑县| 塔城市| 邹城市| 黑山县| 阆中市| 丰顺县| 合阳县| 石家庄市| 布拖县| 台南市| 延边| 广汉市| 离岛区| 商丘市| 伊川县| 清水河县| 易门县| 富平县|