2012-09-11 53 views
1

我想實現當Instagram將雙擊圖片放入我的iOS應用時Instagram使用的「喜歡」動畫。這是一個非常漂亮的功能,並認爲它會爲我的應用增添一點點味道。我張貼了雙擊之前和之後的照片。心臟在兩秒鐘內進出。我想不明白。讓我知道!Instagram「喜歡」動畫iOS

Before

After

+0

所以你想在視圖中用HUD和中間的白色形狀淡入淡出? [你有什麼嘗試?](http://whathaveyoutried.com) –

回答

0

那麼,如果你想要去與動畫的形式給出,你可以做到這一點使用framesequance。

吐司(因爲它是在android中)aproach也是完美的,因此你可以在這裏檢查重複的問題Growl/toast style notifications library for iOS

0
#define LIKED 100 //change as per your requirement 
#define UNLIKE 200 //change as per your requirement 

- (void) likeUnlike:(UIGestureRecognizer *)sender 
{ 
    [imageViewSub setHidden:NO]; 

    UIImageView *imageView = (UIImageView *)sender.view; 

    if(imageView.tag==LIKED) 
    { 
     [imageViewSub setImage:[UIImage imageNamed:@"unlike.png"]]; 
     [imageView setTag:UNLIKE]; 
    } 
    else 
    { 
     [imageViewSub setImage:[UIImage imageNamed:@"like.png"]]; 
     [imageView setTag:LIKED]; 
    } 

    //here, your like/unlike update call to server for store selection. 

    //set the frame exactly you want or 
    //implement some other way to hide `imageViewSub` after like/unlike 
    [imageViewSub setFrame:CGRectMake(110, 180, 100, 100)]; 
    [UIView beginAnimations:@"anim" context:nil]; 
    [UIView setAnimationDuration:1.0]; 
    [imageViewSub setFrame:CGRectMake(200, 200, 0, 0)]; 
    [UIView commitAnimations]; 
} 

//Add below code where you're added/showing your images. There's always two `UIImageView`s one is `main` and other one is `sub`. 

[imageViewSub bringSubviewToFront:imageViewMain]; 

UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc] init]; 
[doubleTap setNumberOfTapsRequired:2]; 
[doubleTap addTarget:self action:@selector(likeUnlike:)]; 
[imageViewMain addGestureRecognizer:doubleTap]; 
[doubleTap release]; 

P.S. imageViewMain最初將具有UNLIKEDimageViewSub的標記,其中unlike.png應該隱藏。

0

在我的一些項目中,我一直在使用MBProgressHUD。您可以設置標準圖像/進度圈或自定義圖像,也可以自定義標籤的字體。我很喜歡它。如果將它與performBlockAfterDelay (check this category)一起使用,它可以爲您節省大量時間,讓您的生活更輕鬆。