菜鸟教程小白 发表于 2022-12-12 14:21:06

ios - 如何阻止 UIWindow 剪切到旋转边界并显示 'black frame' ?


                                            <p><p>我正在 iPad 上创建一个 iOS 应用程序,我的 UIWindow 和它的 rootViewController 对所有 4 个界面方向都有自动旋转。在 rootViewController.view 中,我添加了一个带有 AVPlayer 的 View 。在该 View 中播放的视频是 1280x1280(ipad 的屏幕对角线长度)。我想要的是,当用户旋转 ipad 时,视频居中且足够大,因此当动画旋转到不同的界面方向时,视频仍会填充角落,而不是显示黑框。这可以正常工作,但我发现 UIWindow 有效地剪辑到它的边界,并且在自动旋转时仍然显示“黑色边框”。看到的黑色边框实际上是 UIWindow“后面”的任何东西的黑色。我试过设置 uiWindow.clipsToBounds = NO & 这没有任何改变。</p>

<p>我知道问题在于 UIWindow,因为如果我将 UIWindow 的框架更改为 1280x1280 大小并对其进行着色,则不再显示任何黑色边框。但是,在那个尺寸下,UIWindow 的 rootView 会自动设置为 0,0,768,1024,这是无法更改的,因此我无法在过大的 UIWindow 中将此 View 居中。</p>

<p>我该如何解决这个问题?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>在 iOS 10 中,设置 <code>window.clipsToBounds = YES</code> 可防止黑框显示在下部窗口的顶部。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 如何阻止 UIWindow 剪切到旋转边界并显示&#39;black frame&#39; ?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/18701915/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/18701915/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 如何阻止 UIWindow 剪切到旋转边界并显示 &#39;black frame&#39; ?