iOS 广告页的实现

现象:

诚然、现在很多app启动后除了启动页,还会加一个广告页。今天我们就来说下广告页的实现。

iOS 广告页的实现_第1张图片
动画.gif

分析(3部分组成)

  • UIViewController 要把广告页分离出来,达到更好用,所以我们要新建一个视图控制器。方便扩展!!!
  • UIView 加载广告
  • UILabel 右上角的倒计时,也可以是UIButton!

代码实现

  • 自定义UIView
    初始化的时候创建一个 UIImageView 并且把它的交互打开、添加点击方法来让它跳转网址或者其他。
- (id)initWithFrame:(CGRect)frame {
    self = [super initWithFrame:frame];
    if (self) {
        self.userInteractionEnabled = YES;
        
        _advertisingPageImageView = [[UIImageView alloc] initWithFrame:self.bounds];
        _advertisingPageImageView.userInteractionEnabled = YES;
        [self addSubview:_advertisingPageImageView];
        
        UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)];
        [_advertisingPageImageView addGestureRecognizer:singleTap];
    }
    return self;
}

假如需要通过下载来动态改变广告页。需要加个参数来控制显示什么。所以图片的赋值需要写在这个地方了:

- (void)layoutSubviews {
    [super layoutSubviews];
    
    [_advertisingPageImageView sd_setImageWithURL:[NSURL URLWithString:_pageURLString] placeholderImage:[UIImage imageNamed:@"1111.jpg"]];
}
  • 自定义UILabel
    因为要有倒计时,所以要用到NSTimer。
    初始化方法:
iOS 广告页的实现_第2张图片
初始化.png

这里面就有个地方需要注意了:

  1. 用户点击跳过
  2. 5秒后自动跳过

UIVIewController

只需要把自定义好的UIVIew和UILabel添加上就好了。注意下Frame。

代码链接在这:点我进入Demo下载页面

你可能感兴趣的:(iOS 广告页的实现)