iOS Toast 实现

// 对外暴露两个方法供调用
+ (void)showToast:(NSString *)text;
+ (void)showToast:(NSString *)text inView:(UIView *)superView;
// 实现方法
+ (void)showToast:(NSString *)text{
    [ToastUtil showToast:text inView:[UIApplication sharedApplication].windows.lastObject];
}

+ (void)showToast:(NSString *)text inView:(UIView *)superView {
    if (!superView) {
        return;
    }
    CGSize labelSize = [text sizeWithAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:20.f]}];
    UILabel *label = [[UILabel alloc] init];
    label.font = [UIFont systemFontOfSize:18.f];
    label.text = text;
    label.textAlignment = NSTextAlignmentCenter;
    label.layer.cornerRadius = labelSize.height/4;
    label.layer.masksToBounds = YES;
    label.backgroundColor = [UIColor colorWithRed:38/255.f green:187/255.f blue:251/255.f alpha:1.f];
    label.textColor = [UIColor whiteColor];
    label.frame = CGRectMake((superView.bounds.size.width - labelSize.width)/2, 0, labelSize.width, labelSize.height);
    [superView addSubview:label];
    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
        [label removeFromSuperview];
    });
}

附:我的博客地址

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 0参考代码 蓝牙(BLE)模块及协议.pdf:在电脑内,有助于理解ble BLE蓝牙在Android开发中的应用 ...
    kamin阅读 3,550评论 0 20
  • 我早年都是用 VIM 写程序,也说不上特別喜欢,主要是当时还不知道怎么退出 VIM 《《深入理解ES6》教程学习笔...
    知行社阅读 1,028评论 0 7
  • 学号 姓名 链接 34 路雪莲 路雪莲 40 刘影 刘...
    Aoede阅读 214评论 0 0
  • 漫天飞舞着大大小小的雪, 路灯下两个精灵在诉说。 红唇燃成火焰, 烧灼了两颗心。 火光在曈孔里升腾, 四目相对无言...
    司马潘陆阅读 437评论 1 20
  • 色彩斑斓留给四季 尽情的涂抹 最美的色彩留给岁月 时光偷走我们的容颜 丰盈了我们的人生 调和最美的色彩 交给命运不...
    枫林听雨_4e72阅读 1,029评论 22 37

友情链接更多精彩内容