大佬教程收集整理的这篇文章主要介绍了ios – 具有透明背景的UIModalPresentationFormSheet?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
这可能吗?将uIView设置为不透明,[UIColor clearColor]的BACkgroundColor不起作用.
我注意到当我从UIModalPresentationFormSheet切换到另一种演示样式时,我的视图的背景确实是透明的.
我哪里出错了?
[modalView.superview setBACkgroundcolor:[UIColor clearColor]];
它仍然会透明地调暗背景视图,但不会用纯灰色覆盖它.
………………………………………..
适用于iOS 8的更新
我以前的解决方案不再适用于iOS 8.
有很多步骤可以让这样的东西适用于iOS 8.所以我创建了一个很好的可重用解决方案:ModalController
https://github.com/koreyhinton/ModalController.
let modal = ModalController() modal.content = myCustomView presentViewController(modal,animated: true,completion: nil)
如果您对实现细节感兴趣,我就是这样做的:
使模态视图控制器占据整个屏幕,主视图的背景将在清晰和半暗之间切换.然后,您将拥有一个内容视图,该视图将以实心背景颜色为中心.我还使用了演示样式:.overCurrentContext,我在init方法中分配.
var content = UIView() override func viewDidLoad() { super.viewDidLoad() view.BACkgroundColor = UIColor.clearColor() content.frame = CGRect(x:0,y:0,width:300,height:300) content.BACkgroundColor = UIColor.blackColor() view.addSubview(content) } override func viewDidAppear(animated: Bool) { super.viewDidAppear(animated) view.BACkgroundColor = UIColor.blackColor().colorWithAlphaComponent(0.7) } override func viewWillDisappear(animated: Bool) { super.viewWillDisappear(animated) view.BACkgroundColor = UIColor.clearColor() } override func viewDidLayoutSubviews() { super.viewDidLayoutSubviews() content!.center = view.center }
以上是大佬教程为你收集整理的ios – 具有透明背景的UIModalPresentationFormSheet?全部内容,希望文章能够帮你解决ios – 具有透明背景的UIModalPresentationFormSheet?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。