现象:
诚然、现在很多app启动后除了启动页,还会加一个广告页。今天我们就来说下广告页的实现。
动画.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。
初始化方法:
这里面就有个地方需要注意了:
- 用户点击跳过
- 5秒后自动跳过
UIVIewController
只需要把自定义好的UIVIew和UILabel添加上就好了。注意下Frame。
代码链接在这:点我进入Demo下载页面
网友评论