2012-04-20 87 views
0

我在尋找一些有關動畫的參考資料,例如當您點擊應用程序時,它會爲您帶來第一個屏幕,但是會慢慢地。iphone中的動畫

有沒有人知道這是什麼請在這個問題上給我建議。謝謝

編輯 我只想做一個很好的過渡畢竟。每當我點擊應用程序,第一個屏幕就出現了。我想使它更好,就像第一個屏幕慢慢地慢慢地顯示在屏幕上一樣。希望現在有意義。

+0

您需要在稍後詳細描述一下您的情況... – 2012-04-20 18:39:15

回答

1

我假定您的意思是在應用程序啓動後淡出啓動畫面?您可以添加這樣的事情在applicationDidFinishLaunching立即顯示濺射技術全屏幕上啓動,然後淡出出來

UIView *topView = self.window.rootViewController.view; 
bootSplashView = [[UIImageView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]]; 
bootSplashView.image = [UIImage imageNamed:@"iPhoneDefault.png"]; 
[topView addSubview:bootSplashView]; 
[self performSelector:@selector(fadeBootScreen) withObject:nil afterDelay:0]; 

然後在一個單獨的方法:

- (void)fadeBootScreen 
{ 
    [UIView animateWithDuration:0.4 delay:0.0 options:UIViewAnimationCurveEaseIn animations:^{ 
     bootSplashView.alpha = 0.0; 
    } completion:^(BOOL finished) { 
     [bootSplashView removeFromSuperview]; 
     bootSplashView = nil; 
    }]; 
} 

確保添加'bootSplashView'作爲類變量。如果您的應用程序可以以不同的方向啓動(與iPad相關),則通過加載不同的圖像專門針對這些情況。

+0

我可以淡出UIViewController嗎? – tranvutuan 2012-04-20 19:09:23

1

UIView有很多動畫方法。 看看查看編程指南:

http://developer.apple.com/library/ios/documentation/WindowsViews/Conceptual/ViewPG_iPhoneOS/AnimatingViews/AnimatingViews.html#//apple_ref/doc/uid/TP40009503-CH6-SW1

UIView的文檔也有一章,其中列出了動畫相關的方法: http://developer.apple.com/library/ios/#documentation/uikit/reference/uiview_class/UIView/UIView.html#//apple_ref/doc/uid/TP40006816-CH3-SW131

下面是一個基於塊的動畫,其實例將使用它的alpha值在視圖中淡入淡出:

NSTimeInterval animationDuration = 0.3; 
CGFloat startValue = 0.0; 
CGFloat endValue = 1.0; 

myView.alpha = startValue; 

[UIView animateWithDuration:animationDuration delay:0.0 options:UIViewAnimationOptionAllowUserInteraction animations:^{ 
       myView.alpha = endValue 
    } 
        completion:^(BOOL finished){ 
          // If you need to do something additional once the animation is finished, place it here. 
        }];