呈现后如何隐藏视图的阴影?

时间:2020-05-29 01:06:32

标签: ios swift xcode uiview

我想从表格单元格调用具有透明背景的UIView。

let myView = MyViewController()
myView.view.backgroundColor = .clear
tableController.present(myView, animated: true, completion: nil)

但是仍然存在如此令人不愉快的边界。 enter image description here

myView.modalPresentationStyle = .fullScreen变得更糟-删除背景视图。

1 个答案:

答案 0 :(得分:1)

您可以在具有透明背景的.fullscreen(或任何其他)模式下显示新的viewController

  1. 在viewController中添加内容包含的视图
  2. 将自定义背景色添加到主viewController的视图中。将opacity设置为小于100%(例如30%-参见下面的屏幕)的任何值
  3. 将viewController的演示样式更改为.overCurrentContext

这是您以编程方式可以做到的方式

//apply that for viewController that will be displayed at the top
viewController.modalPresentationStyle = .fullScreen
viewController.modalPresentationStyle = .overCurrentContext

enter image description here