温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

从底部拉出一个view

发布时间:2020-06-20 14:22:35 来源:网络 阅读:399 作者:卓行天下 栏目:开发技术
#define SCREEN_WIDTH         ([[UIScreen mainScreen] bounds].size.width)
#define SCREEN_HEIGHT        ([[UIScreen mainScreen] bounds].size.height)
@property (nonatomic ,strong) UIView *deliverView; 
//底部View@property (nonatomic ,strong) UIView *BGView; 
//遮罩- (void)appearClick { 
// ------全屏遮罩
    self.BGView                 = [[UIView alloc] init];    self.BGView.frame = [[UIScreen mainScreen] bounds];    self.BGView.tag             = 100;    self.BGView.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.0];    self.BGView.opaque = NO;    //--UIWindow的优先级最高,Window包含了所有视图,在这之上添加视图,可以保证添加在最上面
    UIWindow *appWindow = [[UIApplication sharedApplication] keyWindow];
    [appWindow addSubview:self.BGView];   
     // ------给全屏遮罩添加的点击事件
    UITapGestureRecognizer *gesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(exitClick)];
    gesture.numberOfTapsRequired = 1;
    gesture.cancelsTouchesInView = NO;
    [self.BGView addGestureRecognizer:gesture];

    [UIView animateWithDuration:0.3 animations:^{        self.BGView.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.2];

    }];   
     // ------底部弹出的View
    self.deliverView                 = [[UIView alloc] init];    self.deliverView.frame           = CGRectMake(0, SCREEN_WIDTH, SCREEN_WIDTH, SCREEN_WIDTH);    self.deliverView.backgroundColor = [UIColor whiteColor];
    [appWindow addSubview:self.deliverView];   
     // ------View出现动画
    self.deliverView.transform = CGAffineTransformMakeTranslation(0.01, SCREEN_HEIGHT);
    [UIView animateWithDuration:0.3 animations:^{        self.deliverView.transform = CGAffineTransformMakeTranslation(0.01, 0.01);

    }];
}/**
 * 功能: View退出
 */- (void)exitClick {    NSLog(@"====");
    [UIView animateWithDuration:0.3 animations:^{        self.deliverView.transform = CGAffineTransformMakeTranslation(0.01, SCREEN_HEIGHT);        self.deliverView.alpha = 0.2;        self.BGView.alpha = 0;

    } completion:^(BOOL finished) {

        [self.BGView removeFromSuperview];
        [self.deliverView removeFromSuperview];
    }];

}


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI