在很多場景中,我們都需要實現各種動畫,這回我們來嘗試搞一下控制器間跳轉的modal動畫。
- (void)touchesbegan:(nsset *)touches withevent:(uievent *)event
上面是系統提供的動畫的樣式,但是系統提供的動畫有時候滿足不了我們的需求,所以我們就要自定義動畫了,我們接下來,就重點的來說一下自定義動畫這一塊的內容。
準備工作:我之前寫過的單例:一行**搞定單例
以及一些座標的擴充套件,這裡我們直接呼叫一下:
zytransition.h(單例)
#import "singleton.h"
@inte***ce zytransition : nsobject
singletonh(transition)
@endzytransition.m#import "zytransition.h"
#import "zyanimatedtransitioning.h"
#import "zypresentationcontroller.h"
@implementation zytransition
singletonm(transition)
- (uipresentationcontroller *)presentationcontrollerforpresentedviewcontroller:(uiviewcontroller *)presented presentin**iewcontroller:(uiviewcontroller *)presenting sourceviewcontroller:(uiviewcontroller *)source
- (nullable id )animationcontrollerforpresentedcontroller:(uiviewcontroller *)presented presentingcontroller:(uiviewcontroller *)presenting sourcecontroller:(uiviewcontroller *)source
- (nullable id )animationcontrollerfordismissedcontroller:(uiviewcontroller *)dismissed
zyanimatedtransitioning.h (負責動畫)@inte***ce zyanimatedtransitioning : nsobject
@property(nonatomic,assign)bool presented;
@endzyanimatedtransitioning.mconst nstimeinterval duraton = 0.5;
@implementation zyanimatedtransitioning
- (nstimeinterval)transitionduration:(nullable id )transitioncontext
- (void)animatetransition:(id )transitioncontext
completion:^(bool finished) ];
}else
completion:^(bool finished) ];
}}@end搞乙個zypresentationcontroller
.h@inte***ce zypresentationcontroller : uipresentationcontroller.m
@implementation zypresentationcontroller
- (void)presentationtransitionwillbegin
- (void)presentationtransitiondidend:(bool)completed
- (void)dismissaltransitionwillbegin
- (void)dismissaltransitiondidend:(bool)completed
@end
這樣的話,我們外面用起來就非常簡單了:
#import "viewcontroller.h"
#import "zysecondviewcontroller.h"
#import "zytransition.h"
@inte***ce viewcontroller ()
@end
@implementation viewcontroller
- (void)viewdidload
- (void)touchesbegan:(nsset *)touches withevent:(uievent *)event
@end外面只需要跟平時一樣,然後設定顯示的樣式為自定義,然後制定**,就能實現modal的自定義動畫效果了。
自定義動畫
在製作自定義動畫時,有以下八個樣式可供選擇 animation name 動畫名稱 元素所應用的動畫名稱,必須與規則 keyframes 配合使用,因為動畫名稱由 keyframes 定義。animation duration 動畫時間 設定物件動畫的持續時間 animation timing fu...
CustomAnim自定義動畫
android只提供了4種基本動畫效果,除了可以疊加效果外,我們還可以進行自定義動畫。mainactivity.class不變 package com.customanim.customanim import android.os.bundle import android.view.view pu...
自定義動畫效果
demotitle charset utf 8 src bootstrap js jquery.min.js script div1 style head animateh2 params,speed easing fn p 用於建立自定義動畫的函式。這個函式的關鍵在於指定動畫形式及結果樣式屬性物件...