iOS实现翻页效果动画实例代码

2025-05-29 0 91

大体思路:

在self.view 上放置一个label,label.text从数组中获得,当点击上下页按钮的时候,改变label.text,并且执行翻页效果动画.

效果如图:

iOS实现翻页效果动画实例代码

主要代码:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38
#pragma mark - 下一页按钮响应事件

- (void)nextpage:(uibutton *)btn {

_forwardbtn.enabled = yes;

if (_count<_arr.count-1) {

btn.enabled = yes;

_label.text = [_arr objectatindex:_count+1];

nsstring *subtypestring;

subtypestring = kcatransitionfromright;

[self transitionwithtype:@"pagecurl" withsubtype:subtypestring forview:self.view];

_count = _count + 1;

} else {

_count = _arr.count - 1;

btn.enabled = no;

[self showalert:@"已经是最后一页咯,亲(づ ̄ 3 ̄)づ"];

}

nslog(@"%ld", (long)_count);

}

#pragma catransition动画实现

/**

* 动画效果实现

*

* @param type 动画的类型 在开头的枚举中有列举,比如 curldown//下翻页,curlup//上翻页

,flipfromleft//左翻转,flipfromright//右翻转 等...

* @param subtype 动画执行的起始位置,上下左右

* @param view 哪个view执行的动画

*/

- (void) transitionwithtype:(nsstring *) type withsubtype:(nsstring *) subtype forview : (uiview *) view {

catransition *animation = [catransition animation];

animation.duration = 0.7f;

animation.type = type;

if (subtype != nil) {

animation.subtype = subtype;

}

animation.timingfunction = uiviewanimationoptioncurveeaseinout;

[view.layer addanimation:animation forkey:@"animation"];

}

主要就是熟悉一下简单动画的实现了

本项目github地址:https://github.com/iosjason/pageblurdemo.git

2 添加启动页和手势控制的翻页效果实现,添加swipe手势后画面切换更生动.

效果图:

iOS实现翻页效果动画实例代码

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17
#pragma mark - 手势

- (void)configtapges {

_fromrightswip = [[uiswipegesturerecognizer alloc] initwithtarget:self action:@selector(nextpage:)];

_fromrightswip.direction = uiswipegesturerecognizerdirectionleft;

[self.view addgesturerecognizer:_fromrightswip];

_fromleftswip = [[uiswipegesturerecognizer alloc] initwithtarget:self action:@selector(forwardpage:)];

_fromleftswip.direction = uiswipegesturerecognizerdirectionright;

[self.view addgesturerecognizer:_fromleftswip];

}

//判断是否是第一次进入程序

if (![[[nsuserdefaults standarduserdefaults] objectforkey:@"isfirst"] isequaltostring:@"yes"]) {

//显示提示

uialertview *alert = [[uialertview alloc]initwithtitle:@"tishi" message:@"" delegate:self cancelbuttontitle:@"晓得了" otherbuttontitles: nil];

[alert show];

[[nsuserdefaults standarduserdefaults]setobject:@"yes" forkey:@"isfirst"];

}

动画效果和上一个是一种效果,具体代码请看我的gibhub,和上一个项目在一个地址里面,这个在 swipegesturepageblurdemo 分支中.

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持快网idc。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 iOS实现翻页效果动画实例代码 https://www.kuaiidc.com/90616.html

相关文章

发表评论
暂无评论