菜鸟教程小白 发表于 2022-12-11 17:32:17

ios - Xcode 8 中的 UIScreen mainScreen


                                            <p><p>Xcode 8 中的 iOS SDK 存在问题。</p>

<p>我们在项目中使用方法<code></code>。此方法适用于 iOS 2.0。</p>

<p>但是当我们在 Xcode 8 中构建产品并提交审核时,应用被拒绝了。惊喜:在新的 SDK (<strong>Xcode 8 GM</strong>) 中,此方法标记为“<em>可从 iOS 10.0</em> 获得”。换句话说 - 现在 iOS 9 将 <code></code> 标识为“<em>非公共(public) API</em>”。 </p>

<p>也许这是苹果的错误。</p>

<p><strong>我们的问题:</strong><br/>
1)我们想继续使用这个方法。<br/>
2) 我们希望支持 iOS 8 和 iOS 9。<br/>
3) 我们想使用 Xcode 8。<br/>
<strong>这可能吗?</strong></p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>类属性是 Xcode 8 中可用的 Objective-C 功能,看起来 <code>mainScreen</code> 已在 API <a href="https://developer.apple.com/reference/uikit/uiscreen/2097556-mainscreen?language=objc" rel="noreferrer noopener nofollow">to be one</a> 中进行了重构. mainScreen 是非公开的错误似乎是 Apple 端的误导性错误/错误,但如果您使用类属性访问器,错误<em>可能</em>会消失。 </p>

<p>好消息是,由于它是一种语言特性,而不是特定于 iOS 版本,你应该能够采用类属性语法,即 <code>UIScreen.mainScreen</code>,并继续支持 iOS 8-9 .</p>

<p>附言<code>mainBundle</code> 现在也是一个类属性,所以如果你使用它,它可能会触发同样的错误。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - Xcode 8 中的 UIScreen mainScreen,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/39549461/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/39549461/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - Xcode 8 中的 UIScreen mainScreen