关于提示框的小例子

来源:互联网 发布:aotudesk是什么软件 编辑:程序博客网 时间:2024/05/22 00:38

最经写了一个关于提示框弹出的小例子,用于当某项任务完成时,提示相关的消息等等。



showeview.h


#import <UIKit/UIKit.h>


@interface showeview : UIView

+ (id) sharedInstance;

-(void)showMessage:(NSString *)message;

@end



showeview.m

#import "showeview.h"


//获取屏幕宽度、高度

#define SCREEN_WIDTH ([UIScreen mainScreen].bounds.size.width)

#define SCREEN_HEIGHT ([UIScreen mainScreen].bounds.size.height)

//获取设备大小



@implementation showeview



//声明一个全局唯一的静态对象,也是AccountManager类型

static showeview * _sharedInstance;

//方法实现

+ (id) sharedInstance {

    @synchronized ([showeview class]) {

        if (_sharedInstance == nil) {

            _sharedInstance = [[showeview alloc] init];

        }

    }

    return _sharedInstance;

}


-(void)showMessage:(NSString *)message

{

    UIWindow * window = [UIApplication sharedApplication].keyWindow;

    UIView *showview =  [[UIView alloc]init];

    showview.backgroundColor = [UIColor blackColor];

//    showview.frame = CGRectMake(100, 500, 100, 100);

    showview.alpha = 0.6f;

    

    //设置圆角

    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(290, 9000)];

    label.frame = CGRectMake(10, 5, LabelSize.width, LabelSize.height);

    label.text = message;

    label.textColor = [UIColor redColor];

    label.textAlignment = 1;

    label.backgroundColor = [UIColor clearColor];

    label.font = [UIFont boldSystemFontOfSize:15];

    [showview addSubview:label];

    

    

    showview.frame = CGRectMake((SCREEN_WIDTH-(LabelSize.width+20))/2,(SCREEN_HEIGHT-(LabelSize.height+10))/2, LabelSize.width+20, LabelSize.height+10);

    

    [UIView animateWithDuration:1.5 animations:^{

        showview.alpha = 0;

    } completion:^(BOOL finished) {

        [showview removeFromSuperview];

    }];

    

}


@end



0 0
原创粉丝点击