A界面presentB界面, 需要B界面背景透明, 能透过底部看到A界面

这里以A界面有一个按钮来触发present B界面来举例 

- (void)btnClicked:(id)sender {

    TopShowViewController *topVC = [self.storyboardinstantiateViewControllerWithIdentifier:@"lgoinstor"];

    self.modalPresentationStyle =UIModalPresentationCurrentContext;

    [selfpresentViewController:topVC animated:YEScompletion:nil];

}

注:

1. B界面不需要把view设置成背景透明, 默认即可

2. B界面View上的那个用来做透明的背景必须是透明的, 也就是挡住A界面的那部分, 需要是透明的,或者是没有其它控件挡住的。 (有点小废话哈,挡住了肯定就不需要做透明的设计了)

3. 最常见的一个错误是, A是被C导航控制器包含进去的, 这个时候如果以A来present B控制器, 结果发现B控制器背景仍为黑屏, 这是因为虽然看起来是A在做Pressent, 实际上是A的导航控制器C在做Present, 这时候实际上是需要设置C.modalPresentationStyle即可。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值