動畫效果是ios介面重要的特色之一,其中caanimation是所有動畫物件的抽象父類,作為新人,使用較多的是uiview下的動畫方法(類方法)。使用uiview下的動畫,有下面幾個方法。
方法一:設定beginanimations
其中memberview為需要新增的子檢視的檢視,mivc.view為子檢視,在使用的時候,需要將這兩個地方替換
[cpp]view plain
copy
print?
[uiview beginanimations:@"view flip" context:nil];
[uiview setanimationduration:1];
[uiview setanimationtransition:uiviewanimationtransitionflipfromright forview:memberview cache:yes];
[memberview addsubview:mivc.view];
[uiview commitanimations];
需要注意的是,一定要使用[uiview commitanimations];動畫才會生效
通過[uiview setanimationduration:1]; 設定持續時間。
在ios4.0後,我們有了新的方法,+ (void)transitionwithview:(uiview *)view duration:(nstimeinterval)duration options:(uiviewanimationoptions)options animations:(void (^)(void))animations completion:(void (^)(bool finished))completion,依然是uiview的類方法,但使用到了block物件,block物件是一組指令,可以傳遞(像變數一樣),可以把它想像成c語言的函式指標。
方法二:
其中在當前檢視下,刪除[blueviewcontroller view],新增[yellowviewcontroller view],在使用時,這兩個地方要替換
[cpp]view plain
copy
print?
[uiview transitionwithview:self.view
duration:0.2
options:uiviewanimationoptiontransitionflipfromleft
animations:^
completion:null
];
其中animations:後的block為對特定檢視發生的改變,其不能為是null,completion:後block為動畫執行完後,需要執行的**塊,可以為null。
根據手冊,在整個動畫過程中,使用者互動對於此檢視是暫時無效的(而ios5.0前,動畫過程中,使用者互動對於整個應用是無效的),如果想要使用者可以和檢視互動,可以改變uiviewanimationoptionallowuserinteraction
的值。
使用xib布局UIView
一般情況使用 自定義uiview,看不到效果且 冗長 所以可以使用xib布局view.1.新建乙個類,整合自uiview 2.新建乙個uiview的xib,名字要和第一步新建的類名字一致 填寫建立xib的名字和位址 名字和第一步新建的類一致 新建的檔案 3.在xib中關聯建立的view 在xib中選...
UIView的概念與使用
property nonatomic,readonly uiview superview 獲得自己的父控制項物件 property nonatomic,readonly,copy nsarray subviews 獲得自己的所有子控制項物件 property nonatomic cgaffinetr...
使用自定義的UIView
其實使用自定義的uiview非常簡單,就是利用模板生成的基於view的ios程式,然後在xib檔案中,將對應view的對應類修改為你的自定義類就可以了。當然也可以使用直接建立的方式,就是在loadview當中直接使用的方式進行繪製。myview view myview alloc initwithf...