日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iOS:UIView的block函数实现转场动画---双视图

發布時間:2024/1/17 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS:UIView的block函数实现转场动画---双视图 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
使用UIView動畫函數實現轉場動畫——雙視圖 + (void)transitionFromView:(UIView *)fromView?toView:(UIView *)toView?duration:(NSTimeInterval)duration options:(UIViewAnimationOptions)options completion:(void?(^)(BOOL?finished))completion; ? 參數說明: –duration:動畫的持續時間 –options:轉場動畫的類型 –animations:將改變視圖屬性的代碼放在這個block中 –completion:動畫結束后,會自動調用這個block ?

方法調用完畢后,相當于執行了下面兩句代碼:

//?添加toView到父視圖

[fromView.superview?addSubview:toView];

//?把fromView從父視圖中移除

[fromView?removeFromSuperview];

?

具體實例如下:

實現功能:創建兩個子視圖view1和view2,分別設置不同的背景顏色,并把它們添加到父視圖中,然后創建觸摸點擊手勢,

每次觸摸屏幕時,兩個視圖交替切換顯示,即實現轉場動畫。

代碼如下:

//聲明屬性

#import "ViewController.h"@interface ViewController () @property (strong,nonatomic)UIView *view1; @property (strong,nonatomic)UIView *view2; @end

//初始化,創建兩個子視圖,同時創建觸摸點擊手勢并添加手勢事件

- (void)viewDidLoad {[super viewDidLoad];//初始化self.view1 = [[UIView alloc]initWithFrame:self.view.frame];self.view1.backgroundColor = [UIColor redColor]; //view1背景色為紅色[self.view addSubview:self.view1];self.view2 = [[UIView alloc]initWithFrame:self.view.frame];self.view2.backgroundColor = [UIColor greenColor];//view2背景色為綠色[self.view addSubview:self.view2];//添加tap手勢UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tap:)];tap.numberOfTapsRequired = 1;tap.numberOfTouchesRequired = 1;[self.view addGestureRecognizer:tap]; }

//處理觸摸點擊手勢事件,在block函數中實現雙視圖轉場動畫

#pragma mark -tap手勢事件 -(void)tap:(UITapGestureRecognizer *)sender {//通過判斷視圖的父視圖是否為空,可以知道當前視圖是不是正在顯示if (self.view2.superview == nil){//通過block函數切換子視圖(設置動畫過渡類型為翻書效果)[UIView transitionFromView:self.view1 toView:self.view2 duration:1.0f options:UIViewAnimationOptionTransitionCurlUp completion:nil];;}else{//通過block函數切換子視圖(設置動畫過渡類型為翻書效果)[UIView transitionFromView:self.view2 toView:self.view1 duration:1.0f options:UIViewAnimationOptionTransitionCurlUp completion:nil];} }

?

演示結果如下:

開始時:

點擊后:

?

動畫結束后:

?

還可以接著點擊,會變為綠色視圖,就不一一演示了。

?

轉載于:https://www.cnblogs.com/XYQ-208910/p/4886689.html

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的iOS:UIView的block函数实现转场动画---双视图的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。