Swift - 侧滑菜单的实现(样例2:仿QQ,菜单带缩放效果)

来源:互联网 发布:caffe接口matlab 编辑:程序博客网 时间:2024/05/21 12:41

Swift - 侧滑菜单的实现(样例2:仿QQ,菜单带缩放效果)

前面我写了一篇文章介绍如何实现侧滑菜单:Swift - 侧滑菜单的实现(样例1:主页向右滑动,露出下方菜单页)
其实现方式是,通过手势拖动主页面移动,从而露出下面的菜单页(其实后面的菜单页是固定不动的)。

下面演示另一种样式的实现(模仿手机QQ的侧滑菜单),主页面滑动停靠的过程中会逐渐缩小,同时菜单页也会逐渐移动放大,浮现出来。
(注:本文样例是基于前面文章的demo修改的,如果没阅读前文的话可以先去看下。为便于理解,下面将效果分两步实现。)
原文:Swift - 侧滑菜单的实现(样例2:仿QQ,菜单带缩放效果)

1,主页停靠侧边时尺寸逐渐缩小
(1)定义了新属性 minProportion,表示停靠时的缩小比例。在滑动时,再根据页面的位置实时计算出当前的缩放比例。
(2)在主页面与菜单页之间添加了个黑色遮罩层(blackCover), 初始化时是不透明的。随着菜单的展开透明度逐渐变为0。这样侧滑菜单有逐渐显示出来的效果。 
原文:Swift - 侧滑菜单的实现(样例2:仿QQ,菜单带缩放效果)   原文:Swift - 侧滑菜单的实现(样例2:仿QQ,菜单带缩放效果)   原文:Swift - 侧滑菜单的实现(样例2:仿QQ,菜单带缩放效果)

ViewController.swift 代码如下(高亮处为修改过的地方):
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<div class="line number98 index97 alt1 highlighted" style="outlin
0 1
原创粉丝点击