上边半透明的效果并且显示的是上一页的内容

项目介绍:首先上边显示的是透明的视图,透明度为0.8

这是一个vc 设置vc的view的背景颜色为clearcolor  上边是一个按钮,设置按钮的透明度为0.8 背景为黑色 

下边是一个btn 用来做点击事件。

代码附上:

- (void)viewDidLoad {
    [super viewDidLoad];
    self.view.backgroundColor = [UIColor yellowColor];
    
    UIButton *btn = [[UIButton alloc]initWithFrame:CGRectMake(100, 100, 100, 100)];
    [btn setTitle:@"点击打开透明页" forState:UIControlStateNormal];
    btn.backgroundColor = [UIColor  redColor];
    [btn addTarget:self action:@selector(btnClicked:) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:btn];
    
}
-(void)btnClicked:(UIButton*)sender{
    NSLog(@"你点击了btn");
    
    //nextvc
    UIViewController *nextVC = [[UIViewController alloc]init];
    nextVC.view.backgroundColor = [UIColor clearColor];
    
    //设置上边的半透明的背景view
    UIButton *bgBtn = [[UIButton alloc]initWithFrame:CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width, 300)];
    bgBtn.backgroundColor = [UIColor  blackColor];
    //设置形态的方式
    if([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0){
        nextVC.modalPresentationStyle = UIModalPresentationOverCurrentContext;
    }else{
        nextVC.modalPresentationStyle = UIModalPresentationCurrentContext;
    }
    bgBtn.alpha = 0.8;
    //天机点击事件 用来验证可点击
    [bgBtn addTarget:self action:@selector(btnClicked2:) forControlEvents:UIControlEventTouchUpInside];
    [nextVC.view addSubview:bgBtn];

    //分享的按钮的设置
    UIButton *shareBtn = [[UIButton alloc]initWithFrame:CGRectMake(50, 350, 50, 50)];
    [nextVC.view addSubview:shareBtn];
    shareBtn.backgroundColor  = [UIColor purpleColor];
    [shareBtn setTitle:@"tittle1" forState:UIControlStateNormal];
    [shareBtn addTarget:self action:@selector(tittleClicked:) forControlEvents:UIControlEventTouchUpInside];
    
    [self presentViewController:nextVC animated:YES completion:nil];
    
}
-(void)tittleClicked:(UIButton *)sender
{
    NSLog(@"你点击了第一个tittle");
}
-(void)btnClicked2:(UIButton*)sender
{
    NSLog(@"点击的是next的bgBtn");
}
对上述的代码,有任何疑问,可以在下方留言。 也可以给我发邮件咨询:673658917@qq.com 或者是直接加qq:673658917 转载请注明出处,谢谢合作。 睡觉舒服,那是给死人准备的,加油吧,一年后你会感谢现在的自己的。
原文地址:https://www.cnblogs.com/lishanshan/p/5704229.html