iOS引导页的镂空效果

作者: EA88 | 来源:发表于2016-04-29 22:06 被阅读2314次

初衷

最近项目新功能更改较大,产品童鞋要求加入新功能引导,于是一口气花了两天的时间做了一个引导页,当然加上后面的修修补补的时间,就不只两天了,不过这事情其实是一劳永逸的事情,值得做。同时为了能够更好的复用,我把它做成了pod库,项目地址在这里:EAFeatureGuideView

EAFeatureGuideView能做什么

EAFeatureGuideView是UIView的一个扩展,用来做新功能引导提示,达到这样的效果:

  • 局部区域高亮(可以设置圆角)
  • 有箭头指向高亮区域
  • 可以设置一段介绍文字(可以是图片、也可以是文字)
  • 可以对应一个按钮,可以通过配置事件、标题。
    最后的效果如下:


    效果图1
    效果图2

如何使用

如果安装了Cocoapods,可以在Podfile中加入如下代码:
pod 'EAFeatureGuideView',接着pod install一下。
接着在需要展示提示的页面引入头文件:
#import "UIView+EAFeatureGuideView.h"
最后添加如下代码:

EAFeatureItem *item = [[EAFeatureItem alloc] initWithFocusView:self.exampleCell focusCornerRadius:0 focusInsets:UIEdgeInsetsZero];
item.introduce = @"txt_feature_post_activity_4.1.png";
item.actionTitle = @"太好了";
item.action = ^(id sender){
        NSLog(@"touched ..");  
    };

EAFeatureItem *recents = [[EAFeatureItem alloc] initWithFocusRect:CGRectMake(centerX - 25, centerY - 25, 50, 50) focusCornerRadius:25 focusInsets:UIEdgeInsetsZero];    
recents.introduce = @"recents";

[self.navigationController.view showWithFeatureItems:@[item, recents] saveKeyName:@"keyName" inVersion:nil];

可以优化的地方

  • 介绍文案没有支持多颜色。
  • 当高亮区域是圆形的时候,箭头的指向没有对中圆心。

相关文章

网友评论

  • 97f52a50453b:大神,我想用你这个,我想要做的是首先出现一个提示框,点击后,原来的消失掉,再出现一个新的提示框。但是,你的这个,只能显示一次,之后的再也不能显示了,我该怎么操作呢?
  • 阿兹尔:大神你能给个完整的Demo
    EA88:@阿兹尔 你好,文章开头有在Github上的完整代码
  • zeigler:点击事件怎么没效果啊?
    zeigler: @EA88 就是下方的绿色的Button,用block回调的action
    EA88:@zeigler 你是说当箭头指向下方的时候,按钮点击无响应吗?
    zeigler:@zeigler 大神求解答啊!为什么下方点击事件没效果?比如说知道了这个action
  • xxttw:有个需求,如果 新功能没有出现在首屏 需要滑到当前位置才出现新手引导. 考虑过这种情况么
    xxttw:@EA88 嗯 我下午用你的试试
    EA88:当你需要展示提示的view出现在屏幕上时,再show出提示就可以了,比如是个uitableviewcell,那么你可以通过取visiblecell来判断你要提示的cell是否在屏幕上,然后再决定要不要show这个提示。

本文标题:iOS引导页的镂空效果

本文链接:https://www.haomeiwen.com/subject/wbfkrttx.html