欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

iOS開發(fā)中仿Tumblr點贊心破碎動畫效果

 更新時間:2017年04月13日 15:53:15   作者:韓俊強  
這篇文章主要介紹了iOS開發(fā)中仿Tumblr點贊心破碎動畫效果,本文圖文并茂給大家介紹的非常詳細,需要的朋友可以參考下

 最近Tumblr輕博客無論是web端還是移動端,都非常受歡迎,簡單調研了一下,其中動畫是我感興趣的,特此寫了個仿Tumblr點贊心破碎動畫;

1.首先看下效果:

2.模仿Tumblr中的效果應用如下:

原理:使用按鈕點擊Action增加兩個事件,通過改變背景hidden和frame,切換圖片,增加動畫效果等;

setupUI及touch Action:

<span style="font-size:14px;">- (void)setupUI 
{ 
  // 點擊的btn 
  UIButton *praiseBtn = [UIButton buttonWithType:UIButtonTypeCustom]; 
  praiseBtn.frame = CGRectMake(100, 200, KKPraiseBtnWH, KKPraiseBtnWH); 
  [praiseBtn setImage:[UIImage imageNamed:@"icon_like"] forState:UIControlStateNormal]; 
  [praiseBtn setImage:[UIImage imageNamed:@"icon_likeon"] forState:UIControlStateSelected]; 
  [self.view addSubview:praiseBtn]; 
  [praiseBtn addTarget:self action:@selector(clickTheBtn:) forControlEvents:UIControlEventTouchUpInside]; 
  _praiseBtn = praiseBtn; 
  // 放大后的btn 
  _coverBtn = [UIButton buttonWithType:UIButtonTypeCustom]; 
  _coverBtn.frame = praiseBtn.frame; 
  _coverBtn.alpha = 0; 
  [_coverBtn setImage:[UIImage imageNamed:@"big"] forState:UIControlStateSelected]; 
  [_coverBtn setImage:[UIImage imageNamed:@"big"] forState:UIControlStateNormal]; 
  [self.view insertSubview:_coverBtn belowSubview:praiseBtn]; 
  _cancelPraiseImg = [[UIImageView alloc]initWithFrame:CGRectMake(80, 150, KKPraiseBtnWH*2, KKPraiseBtnWH*2*KKToBrokenHeartWH)]; 
  _cancelPraiseImg.hidden = YES; 
  _cancelPraiseImg.centerX = _praiseBtn.centerX; 
  [self.view addSubview:_cancelPraiseImg]; 
} 
-(void)clickTheBtn:(UIButton *)btn 
{ 
  [self playAnimation]; 
  btn.userInteractionEnabled = NO; 
  btn.selected = !btn.selected; 
} 
-(void)playAnimation{ 
  if (!_praiseBtn.selected) { 
    _coverBtn.alpha = 1; 
    [UIView animateWithDuration:1.0f animations:^{ 
      _coverBtn.frame = CGRectMake(80, 100, KKPraiseBtnWH*2, KKPraiseBtnWH*2); 
      CAKeyframeAnimation *anima = [CAKeyframeAnimation animationWithKeyPath:@"transform.rotation"]; 
      NSValue *value1 = [NSNumber numberWithFloat:-M_PI/180*5]; 
      NSValue *value2 = [NSNumber numberWithFloat:M_PI/180*5]; 
      NSValue *value3 = [NSNumber numberWithFloat:-M_PI/180*5]; 
      anima.values = @[value1,value2,value3]; 
      anima.repeatCount = MAXFLOAT; 
      [_coverBtn.layer addAnimation:anima forKey:nil]; 
      _coverBtn.alpha = 0; 
      _coverBtn.centerX = _praiseBtn.centerX; 
    } completion:^(BOOL finished) { 
      _coverBtn.frame = _praiseBtn.frame; 
      _praiseBtn.userInteractionEnabled = YES; 
    }]; 
  } else { 
    _cancelPraiseImg.hidden = NO; 
    NSArray *imgArr = [NSArray arrayWithObjects:[UIImage imageNamed:@"icon_like_broken1"],[UIImage imageNamed:@"icon_like_broken2"],[UIImage imageNamed:@"icon_like_broken3"],[UIImage imageNamed:@"icon_like_broken4"], nil nil]; 
    _cancelPraiseImg.animationImages = imgArr; 
    _cancelPraiseImg.animationDuration = KKBorkenTime; 
    _cancelPraiseImg.animationRepeatCount = 1; 
    [_cancelPraiseImg startAnimating]; 
    [UIView animateWithDuration:KKBorkenTime animations:^{ 
      _cancelPraiseImg.frame = CGRectMake(80, 200, KKPraiseBtnWH*2, KKPraiseBtnWH*2*KKToBrokenHeartWH); 
      _cancelPraiseImg.alpha = 0; 
    }completion:^(BOOL finished) { 
      _cancelPraiseImg.frame = CGRectMake(80, 150, KKPraiseBtnWH*2, KKPraiseBtnWH*2*KKToBrokenHeartWH); 
      _cancelPraiseImg.alpha = 1; 
      _praiseBtn.userInteractionEnabled = YES; 
    }]; 
  } 
}</span> 

以上所述是小編給大家介紹的iOS開發(fā)中仿Tumblr點贊心破碎動畫效果,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

  • IOS開發(fā)之適配iOS10及Xcode8的注意點

    IOS開發(fā)之適配iOS10及Xcode8的注意點

    這篇文章主要介紹了IOS開發(fā)之適配iOS10及Xcode8的注意點,本文給大家介紹了可能出現(xiàn)的問題及相應的解決方法,非常不錯具有參考借鑒價值,感興趣的朋友一起看看
    2016-10-10
  • iOS NSDate中關于夏令時的坑

    iOS NSDate中關于夏令時的坑

    這篇文章主要給大家介紹了關于iOS NSDate中夏令時的坑,以及iOS 時間字符串&NSDate&時間戳 相互轉換的相關內容,分享出來供大家參考學習,需要的朋友可以參考借鑒,下面隨小編來一起學習學習吧
    2018-08-08
  • 實例講解iOS中的CATransition轉場動畫使用

    實例講解iOS中的CATransition轉場動畫使用

    CATransition類為應用程序的轉場動畫提供了很多可控制參數(shù),接下來我們就以幾個實例講解iOS中的CATransition轉場動畫使用,需要的朋友可以參考下
    2016-06-06
  • iOS開發(fā)之tableView cell的展開收回功能實現(xiàn)代碼

    iOS開發(fā)之tableView cell的展開收回功能實現(xiàn)代碼

    本文介紹了iOS開發(fā)之tableView cell的展開收回功能實現(xiàn)代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • iOS獲取當前設備WiFi信息的方法

    iOS獲取當前設備WiFi信息的方法

    很多公司現(xiàn)在都在做免費WIFI,車站、公交、地鐵、餐廳,只要是人員密集流動的地方就有WIFI,免費WIFI從最初的網(wǎng)頁認證方式也逐漸向客戶端認證方式偏移。本文主要介紹iOS獲取當前設備WiFi信息的方法,有需要的可以參考借鑒。
    2016-09-09
  • iOS仿微信圖片分享界面實現(xiàn)代碼

    iOS仿微信圖片分享界面實現(xiàn)代碼

    這篇文章主要為大家詳細介紹了iOS仿微信相冊界面翻轉過渡動畫效果,微信采用界面翻轉的過渡動畫跳轉到評論界面,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • iOS的UI開發(fā)中Button的基本編寫方法講解

    iOS的UI開發(fā)中Button的基本編寫方法講解

    這篇文章主要介紹了iOS的UI開發(fā)中Button的基本編寫方法講解,代碼基于傳統(tǒng)的Objective-C,需要的朋友可以參考下
    2015-11-11
  • ios的簽名機制詳解

    ios的簽名機制詳解

    這篇文章主要介紹了ios的簽名機制的相關資料,幫助大家更好的理解和學習使用ios開發(fā),感興趣的朋友可以了解下
    2021-04-04
  • iOS CoreAnimation 圖層幾何學

    iOS CoreAnimation 圖層幾何學

    本文主要介紹了iOS CoreAnimation圖層幾何學,圖層幾何所講主要是有關圖層的位置,尺寸等幾何類屬性。具有很好的參考價值。下面跟著小編一起來看下吧
    2017-03-03
  • swift 隱式可選型實例詳解

    swift 隱式可選型實例詳解

    這篇文章主要介紹了 swift 隱式可選型實例詳解的相關資料,需要的朋友可以參考下
    2017-06-06

最新評論