MY_OC_ iOS_底部彈出View

image
#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的優(yōu)先級(jí)最高,Window包含了所有視圖,在這之上添加視圖,可以保證添加在最上面
   UIWindow *appWindow = [[UIApplication sharedApplication] keyWindow];
   [appWindow addSubview:self.BGView];

   // ------給全屏遮罩添加的點(diǎn)擊事件
   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出現(xiàn)動(dòng)畫
   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];
   }];

}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容