说到弹框控件,想必我们用到最多的应该就是UIAlertView啦,虽然苹果官方在iOS9.0之后推出来了UIAlertController,也可以达到之前的效果,但是调用起来比原来麻烦多了,而且如果使用UIAlertController,你的项目就无法在iOS9.0以下的设备上运行。
今天笔者给大家分享一个添加自动消失效果的弹框,说白了就是UIAlertView+NSTimer封装了一下。
效果图如下:
在ViewController.h中导入SZKCustomAlter.h头文件
一句代码调用
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor=[UIColor whiteColor];
[SZKCustomAlter showAlter:@"简书号:iOS_凯"];
}
实现方法:
SZKCustomAlter.h
修改ALTERTIME
的值,控制弹框在多长时间后消失
//
// SZKCustomAlter.h
// CustomAlterView
//
// Created by sunzhaokai on 16/7/27.
// Copyright © 2016年 孙赵凯. All rights reserved.
//
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#define ALTERTIME 2
@interface SZKCustomAlter : NSObject
+(void)showAlter:(NSString *)message;
@end
SZKCustomAlter.m中
//
// SZKCustomAlter.m
// CustomAlterView
//
// Created by sunzhaokai on 16/7/27.
// Copyright © 2016年 孙赵凯. All rights reserved.
//
#import "SZKCustomAlter.h"
@implementation SZKCustomAlter
+(void)showAlter:(NSString *)message;
{
UIAlertView *alter=[[UIAlertView alloc]initWithTitle:nil message:message delegate:nil cancelButtonTitle:nil otherButtonTitles:nil, nil];
[NSTimer scheduledTimerWithTimeInterval:ALTERTIME target:self selector:@selector(timerAction:) userInfo:alter repeats:NO];
[alter show];
}
+(void)timerAction:(NSTimer *)timer
{
UIAlertView *alter=(UIAlertView *)[timer userInfo];
[alter dismissWithClickedButtonIndex:0 animated:YES];
}
@end
备注:
1.使用系统的UIAlertView+NSTimer进行了简单的封装,调用简单,使用方便。
2.仅有一个输入内容的接口,可拓展性差,控件大小,位置,字体等均不能改变,仅用于一个简单的提示效果。
3.如果想要自定义弹框,可以参考:
iOS开发-轻松学会封装自定义视图view(自定义弹框封装详解)
http://www.jianshu.com/p/de2ecfd770c2
笔者的其他文章:
iOS开发-两句代码快速实现无限轮播图(基于ScrollView封装)
http://www.jianshu.com/p/d240bd977689
iOS在线音乐播放SZKAVPlayer(基于AVPlayer的封装)
http://www.jianshu.com/p/4e0ac2898de0
iOS开发-一句代码调用实现网络的监测功能(基于AFNetworkReachabilityManager的封装)
http://www.jianshu.com/p/b901ad0c1d81
如果有不足或者错误的地方还望各位读者批评指正,可以评论留言,笔者收到后第一时间回复。
QQ/微信:790057066 。
简书号:iOS_凯:http://www.jianshu.com/users/86b0ddc92021/latest_articles
GitHub个人主页(欢迎star):https://github.com/18811314750
感谢各位观众老爷的阅读,如果觉得笔者写的还凑合,可以关注或收藏一下,不定期分享一些好玩的实用的demo给大家。