ios – presentViewController黑色背景而不是透明

ios – presentViewController黑色背景而不是透明,第1张

概述我有一个观点,我希望以标准方式呈现给用户(从屏幕底部向上滑动).大约一半的视图是透明背景,下半部分有一些输入字段(想象键盘d出的方式).当我在rootViewController上调用[self presentViewController]时,它会向上滑动视图,但是大约半秒之后,视图过去是透明的,而是用黑色代替.这与presentViewController和presentModalViewCon 我有一个观点,我希望以标准方式呈现给用户(从屏幕底部向上滑动).大约一半的视图是透明背景,下半部分有一些输入字段(想象键盘d出的方式).当我在rootVIEwController上调用[self presentVIEwController]时,它会向上滑动视图,但是大约半秒之后,视图过去是透明的,而是用黑色代替.这与presentVIEwController和presentModalVIEwController都会发生.如何改变这种行为?解决方法 这是可能的,rockybalboa在 raywenderlich.com论坛帖子中提供了解决此问题的方法:

iOS 8 UIModalPresentationCurrentContext is not transparent?

该解决方案在Objective-C中引用了巴尔博亚的答案:

Before iOS 8,you do this:

[backgroundVIEwController setModalPresentationStyle:UIModalPresentationCurrentContext];[backgroundVIEwController presentVIEwController:_myMoreAppsVIEwController animated:NO completion:nil];

in iOS 8,you have to do this:

backgroundVIEwController.provIDesPresentationContextTransitionStyle = YES;backgroundController.definesPresentationContext = YES;[overlayVIEwController setModalPresentationStyle:UIModalPresentationOverCurrentContext];

用Swift等价物来补充上面的代码:

backgroundVIEwController.provIDesPresentationContextTransitionStyle = truebackgroundController.definesPresentationContext = trueoverlayVIEwController.modalPresentationStyle = .OverCurrentContext

在iOS 8.1和Swift 1.2上使用Xcode 6.3 beta 3实现了这一点,它完美无缺.

只是评论我在查找和尝试Ray Wenderlich论坛解决方案之前,已经查看了三个不同的SO问题 – 现在标记为重复.

总结

以上是内存溢出为你收集整理的ios – presentViewController黑色背景而不是透明全部内容,希望文章能够帮你解决ios – presentViewController黑色背景而不是透明所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1109622.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存