[iOS學(xué)習(xí)]iOS Tom貓工程

@implementation ViewController

- (BOOL)prefersStatusBarHidden
{
    return YES;
}

- (void)viewDidLoad {
    [super viewDidLoad];
    //導(dǎo)入本地文件“tom.plist”
    NSString *filename = [[NSBundle mainBundle]pathForResource:@"tom.plist" ofType:nil];
    _dicData = [NSDictionary dictionaryWithContentsOfFile:filename];
}

- (void)runAnimation:(NSString *)actiontype withNumber:(NSInteger)number
{
    //判斷當(dāng)前是否有動畫正在進行
    if (_pictureImageView.isAnimating == NO)
    {
        NSMutableArray *images = [[NSMutableArray alloc]init];
        for (int i = 0; i < number; i++)
        {
            NSString *filename = [NSString stringWithFormat:@"%@_%02d.jpg",actiontype ,i];
            //有緩存的一種圖片加載方式,直接將圖片全部加載在內(nèi)存中

//            UIImage *image = [UIImage imageNamed:filename];

            //這樣加載是將圖片加載在系統(tǒng)文件中需要時調(diào)入內(nèi)存
            NSString *filepath = [[NSBundle mainBundle] pathForResource:filename ofType:nil];
            NSData *data = [NSData dataWithContentsOfFile:filepath];
            UIImage *image = [UIImage imageWithData:data];
            [images addObject:image];
        }
        _pictureImageView.animationImages = images;
        _pictureImageView.animationDuration = number * 0.07;
        _pictureImageView.animationRepeatCount = 1;
        [_pictureImageView startAnimating];
        //在動畫結(jié)束0.5秒之后將內(nèi)存釋放
        [_pictureImageView performSelector:@selector(setAnimationImages:) withObject:nil afterDelay:_pictureImageView.animationDuration + 0.5];
    }
}

- (IBAction)eatButton:(id)sender {
    NSInteger number = [[_dicData objectForKey:@"eat"] integerValue];
    [self runAnimation:@"eat" withNumber:number];
}

- (IBAction)dringButton:(id)sender {
    NSInteger number = [[_dicData objectForKey:@"drink"] integerValue];
    [self runAnimation:@"drink" withNumber:number];
}

- (IBAction)cymbalButton:(id)sender {
    NSInteger number = [[_dicData objectForKey:@"cymbal"] integerValue];
    [self runAnimation:@"cymbal" withNumber:number];
}

- (IBAction)fartButton:(id)sender {
    NSInteger number = [[_dicData objectForKey:@"fart"] integerValue];
    [self runAnimation:@"fart" withNumber:number];
}

- (IBAction)pieButton:(id)sender {
    NSInteger number = [[_dicData objectForKey:@"pie"] integerValue];
    [self runAnimation:@"pie" withNumber:number];
}

- (IBAction)scratchButton:(id)sender {
    NSInteger number = [[_dicData objectForKey:@"scratch"] integerValue];
    [self runAnimation:@"scratch" withNumber:number];
}

- (IBAction)leftFoot:(id)sender {
    NSInteger number = [[_dicData objectForKey:@"foot_right"] integerValue];
    [self runAnimation:@"footRight" withNumber:number];
}

- (IBAction)rightFoot:(id)sender {
    NSInteger number = [[_dicData objectForKey:@"foot_left"] integerValue];
    [self runAnimation:@"footLeft" withNumber:number];
}

- (IBAction)knock:(id)sender {
    NSInteger number = [[_dicData objectForKey:@"knockout"] integerValue];
    [self runAnimation:@"knockout" withNumber:number];
}

- (IBAction)stomach:(id)sender {
    NSInteger number = [[_dicData objectForKey:@"stomach"] integerValue];
    [self runAnimation:@"stomach" withNumber:number];
}
@end
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容