iOS 类图虫评论页面(上半部分半透明)实现

iOS 类图虫评论页面(上半部分半透明)实现_第1张图片
IMG_0847.PNG

这是图虫首页点击评论后的页面,这个页面有两个亮点:1.上半部分半透明;2.下半部分顶部切圆角。

实现思路:共 0 - 5 六个步骤。
0.创建一个控制器controllerX
1.在viewA(第0步创建的controllerX的view,以下简称A)上添加一个button和viewB(以下简称B)
2.设置A的背景色为[UIColor clearColor],设置button的背景色为黑色,alpha为x(0到1之间,根据需求自己确定)

注:通过这种设置可以给出一种视觉上的假象,就像开局的图中展示的那样,让用户看到一个上半部分半透明的页面。而实际上,这个半透明的部分只是一个带有透明度的button。以假乱真

3.设置B的左上角和有上角为圆角(本文最后会介绍如何指定切圆角)
4.设置button和B的约束。

注:这里需要特别说明一下,请看下面的三张图


iOS 类图虫评论页面(上半部分半透明)实现_第2张图片
Snip20161228_2.png
iOS 类图虫评论页面(上半部分半透明)实现_第3张图片
Snip20161228_3.png
iOS 类图虫评论页面(上半部分半透明)实现_第4张图片
Snip20161228_6.png

图1和图3为我为了演示特意设置的测试截图。图2为项目正式的截图(来自我们公司的产品TOP6000)。

设置控件约束,我使用的是第三方框架Masonry。
button的约束为:


Snip20161228_7.png

B的约束为:


Snip20161228_8.png

注意我用红线圈住的两条约束,按钮的高度给的固定值30,B的顶部距离父view的顶部固定18。这里需要注意什么呢?就是按钮的高度要大于B顶部到父view顶部的距离,这样做就可以使得按钮多出来一部分,避免出现图1那种情况。

5.最后一步:直接以modal的方式弹出controllerX就可以看到效果啦~

最后:如果大家有更好的思路,请私信我;如果发现我写的有问题,没说明白的,请私信我。谢谢。

备注:controllerX.modalPresentationStyle = UIModalPresentationOverCurrentContext;
self.definesPresentationContext = YES;
以上添加的这两行代码能够保证present controllerX 之后, self.view仍然显示.

你可能感兴趣的:(iOS 类图虫评论页面(上半部分半透明)实现)