简单的iOS提示Toast

栏目: IOS · 发布时间: 6年前

内容简介:最近梳理项目中的Toast,发现应用的场景并不复杂,于是就自己定义了一个Toast替换之前的。WHToast是一个轻量级的提示控件,没有任何依赖。先来看一下效果图。Github地址:

最近梳理项目中的Toast,发现应用的场景并不复杂,于是就自己定义了一个Toast替换之前的。

WHToast是一个轻量级的提示控件,没有任何依赖。先来看一下效果图。

Github地址: https://github.com/remember17/WHToast

简单的iOS提示Toast

使用方法也非常简单,下面是使用步骤。

1. 可以直接去github下载文件拖进工程,也可以使用pod。

如果pod找不到WHToast,先执行 pod setup

pod 'WHToast'

// 如果pod找不到WHToast,先执行 pod setup
pod setup

2. 导入WHToast.h头文件

// pod
#import // 直接拖入文件
#import "WHToast.h"

3. 说明

每种显示类型都有两个方法,第一个方法默认显示在屏幕中间,第二个方法带有originY参数的是可以自定义显示位置,也就是自定义frame.origin.y。(注意:如果传入的originY<=0,也是显示在屏幕中间)。

4. 显示文字提示。

// 显示在页面中间,duration代表多久之后消失
[WHToast showMessage:@"测试一下" duration:2 finishHandler:^{
  NSLog(@"省略n行代码");
}];

// 自定义frame.origin.y
[WHToast showMessage:@"测试一下" originY:200 duration:2 finishHandler:^{
  NSLog(@"省略n行代码");
}];

5. 显示带有成功图标的提示。

// 显示在页面中间,duration代表多久之后消失
[WHToast showSuccessWithMessage:@"测试一下" duration:2 finishHandler:^{
  NSLog(@"省略n行代码");
}];

// 自定义frame.origin.y
[WHToast showSuccessWithMessage:@"测试一下" originY:100 duration:2 finishHandler:^{
  NSLog(@"省略n行代码");
}];

6. 带有错误图标的提示。

// 显示在页面中间,duration代表多久之后消失
[WHToast showErrorWithMessage:@"测试一下" duration:2 finishHandler:^{
  NSLog(@"省略n行代码");
}];

// 自定义frame.origin.y
[WHToast showErrorWithMessage:@"测试一下" originY:200 duration
:2 finishHandler:^{
  NSLog(@"省略n行代码");
}];

7. 传入一个图片,自定义图标提示。

// 显示自定义图片,如果message传入nil,则只显示图片,duration代表多久之后消失
[WHToast showImage:[UIImage imageNamed:@"123"] message:nil duration:2 finishHandler:^{
  NSLog(@"省略n行代码");
}];

// 自定义frame.origin.y,显示自定义图片
[WHToast showImage:[UIImage imageNamed:@"123"] message:@"测试一下" originY:200 duration:2 finishHandler:^{
  NSLog(@"省略n行代码");
}];

8. 全局自定义显示样式。

直接使用WHToast的类方法就可以做全局自定义设置。样式如下。

/** 是否有背景遮罩,默认有 */
+ (void)setShowMask:(BOOL)showMask;

/** 遮罩颜色,默认透明 */
+ (void)setMaskColor:(UIColor *)maskColor;

/** 遮罩是否遮住导航栏,默认遮住 */
+ (void)setMaskCoverNav:(BOOL)maskCoverNav;

/** 边距,默认12 */
+ (void)setPadding:(CGFloat)padding;

/** 提示图片尺寸,默认(25,25)*/
+ (void)setTipImageSize:(CGSize)tipImageSize;

/** 圆角,默认7 */
+ (void)setCornerRadius:(CGFloat)cornerRadius;

/** 背景颜色,默认[UIColor colorWithWhite:0 alpha:0.8] */
+ (void)setBackColor:(UIColor *)backColor;

/** 成功/失败 图标颜色,默认白色 */
+ (void)setIconColor:(UIColor *)iconColor;

/** 文字颜色,默认白色 */
+ (void)setTextColor:(UIColor *)textColor;

/** 文字大小,默认15 */
+ (void)setFontSize:(CGFloat)fontSize;

/** 恢复默认配置 */
+ (void)resetConfig;

// 调用方式
[WHToast setShowMask:NO];
[WHToast setMaskColor:[UIColor colorWithWhite:0 alpha:0.6]];
[WHToast setMaskCoverNav:NO];
[WHToast setTipImageSize:CGSizeMake(50, 50)];
[WHToast setFontSize:30];
[WHToast setPadding:20];
[WHToast setCornerRadius:20];
[WHToast setIconColor:[UIColor blackColor]];
[WHToast setBackColor:[UIColor whiteColor]];
[WHToast setTextColor:[UIColor blackColor]];

9. 下面贴出来 WHToast 的所有方法。

/** 仅文字,展示在屏幕中间 */
+ (void)showMessage:(NSString *)message duration:(NSTimeInterval)duration finishHandler:(dispatch_block_t)handler;

/** 仅文字,自定义frame.origin.y 如果(originY <= 0)会展示在屏幕中间 */
+ (void)showMessage:(NSString *)message originY:(CGFloat)originY duration:(NSTimeInterval)duration finishHandler:(dispatch_block_t)handler;

/** 成功图标和文字,展示在屏幕中间 */
+ (void)showSuccessWithMessage:(NSString *)message duration:(NSTimeInterval)duration finishHandler:(dispatch_block_t)handler;

/** 成功图标和文字,自定义frame.origin.y 如果(originY <= 0)会展示在屏幕中间 */
+ (void)showSuccessWithMessage:(NSString *)message originY:(CGFloat)originY duration:(NSTimeInterval)duration finishHandler:(dispatch_block_t)handler;

/** 失败图标和文字,展示在屏幕中间 */
+ (void)showErrorWithMessage:(NSString *)message duration:(NSTimeInterval)duration finishHandler:(dispatch_block_t)handler;

/** 失败图标和文字,自定义frame.origin.y 如果(originY <= 0)会展示在屏幕中间 */
+ (void)showErrorWithMessage:(NSString *)message originY:(CGFloat)originY duration:(NSTimeInterval)duration finishHandler:(dispatch_block_t)handler;

/** 自定义图片和文字,展示在屏幕中间。 如果message传入nil,则只显示图片 */
+ (void)showImage:(UIImage *)image message:(NSString *)message duration:(NSTimeInterval)duration finishHandler:(dispatch_block_t)handler;

/** 自定义图片和文字,自定义frame.origin.y 如果(originY <= 0)会展示在屏幕中间。如果message传入nil,则只显示图片 */
+ (void)showImage:(UIImage *)image message:(NSString *)message originY:(CGFloat)originY duration:(NSTimeInterval)duration finishHandler:(dispatch_block_t)handler;

/** 主动消失 */
+ (void)hide;
/******************************************************/
/******************  设置全局样式  **********************/
/******************************************************/

/** 是否有背景遮罩,默认有 */
+ (void)setShowMask:(BOOL)showMask;

/** 遮罩颜色,默认透明 */
+ (void)setMaskColor:(UIColor *)maskColor;

/** 遮罩是否遮住导航栏,默认遮住 */
+ (void)setMaskCoverNav:(BOOL)maskCoverNav;

/** 边距,默认12 */
+ (void)setPadding:(CGFloat)padding;

/** 提示图片尺寸,默认(25,25)*/
+ (void)setTipImageSize:(CGSize)tipImageSize;

/** 圆角,默认7 */
+ (void)setCornerRadius:(CGFloat)cornerRadius;

/** 背景颜色,默认[UIColor colorWithWhite:0 alpha:0.8] */
+ (void)setBackColor:(UIColor *)backColor;

/** 成功/失败 图标颜色,默认白色 */
+ (void)setIconColor:(UIColor *)iconColor;

/** 文字颜色,默认白色 */
+ (void)setTextColor:(UIColor *)textColor;

/** 文字大小,默认15 */
+ (void)setFontSize:(CGFloat)fontSize;

/** 恢复默认配置 */
+ (void)resetConfig;

后记

https://github.com/remember17/WHToast

我的GitHub: https://github.com/remember17

作者:remember17

链接:https://www.jianshu.com/p/41cbf46ce10d


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

计算智能

计算智能

Russell C. Eberhart、Yuhui Shi / 人民邮电出版社 / 2009-2 / 69.00元

《计算智能:从概念到实现(英文版)》面向智能系统学科的前沿领域,系统地讨论了计算智能的理论、技术及其应用,比较全面地反映了计算智能研究和应用的最新进展。书中涵盖了模糊控制、神经网络控制、进化计算以及其他一些技术及应用的内容。《计算智能:从概念到实现(英文版)》提供了大量的实用案例,重点强调实际的应用和计算工具,这些对于计算智能领域的进一步发展是非常有意义的。《计算智能:从概念到实现(英文版)》取材......一起来看看 《计算智能》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试