关于iOS 可消失的提示框(黑色)

首先我们需要写一个私有方法,封装一下,以便于后面调用

我们需要在.h文件中写一个这样的方法

-(void)showAlertMsg:(NSString *)message Duration:(float)duration;

然后在.m文件中调用

-(void)showAlertMsg:(NSString *)message Duration:(float)duration
{
    UIWindow * window = [UIApplication sharedApplication].keyWindow;
    UIView *showview =  [[UIView alloc]init];
    showview.backgroundColor = [UIColor blackColor];
    showview.frame = CGRectMake(1, 1, 1, 1);
    
    showview.alpha = 1.0f;
    showview.layer.cornerRadius = 5.0f;
    showview.layer.masksToBounds = YES;
    [window addSubview:showview];
    
    UILabel *label = [[UILabel alloc]init];
    
    CGSize LabelSize = [message sizeWithFont:[UIFont systemFontOfSize:17] constrainedToSize:CGSizeMake(SCREEN_WIDTH-50, 9000)];
    label.frame = CGRectMake(10, 5, LabelSize.width, LabelSize.height);
    label.text = message;
    label.textColor = [UIColor whiteColor];
    label.textAlignment = 1;
    label.backgroundColor = [UIColor clearColor];
    label.font = [UIFont boldSystemFontOfSize:15];
    label.numberOfLines = 0; //
    
    [showview addSubview:label];
    showview.frame = CGRectMake((SCREEN_WIDTH - LabelSize.width)/2, SCREEN_HEIGHT/2 +50+LabelSize.height, LabelSize.width+10, LabelSize.height+10);
    [UIView animateWithDuration:duration animations:^{
        showview.alpha = 0;
    } completion:^(BOOL finished) {
        [showview removeFromSuperview];
    }];
}

最后在你需要的地方去调用此方法

[self showAlertMsg:@"你想输入的内容" Duration:3(希望出现多少秒)];
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,699评论 25 708
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,219评论 30 472
  • 时间就像离弦之箭,携着那年秋天此去经年! 如果承诺真的是不可违背,你是不是也像我一样永远忘不了那个秋天,那是我们第...
    黄玉仙阅读 343评论 0 3
  • 一个人,一辈子只能学会三件事:知识、技能、态度。 知识,knowledge,是用大脑来学的、它强调新知感、学习方法...
    wml专注一点阅读 1,527评论 0 0
  • 自从前段时间的丽江游人遭遇暴力事件之后的很多天里,丽江这个曾经无数少男少女都迷之向往的文艺地界,突然一下子被贴上了...
    安南烬阅读 852评论 0 0