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

ios - Xcode TARGET_OS_IPHONE 似乎很困惑,bug 还是配置错误?


                                            <p><p>在一个较旧的项目中,我在几个地方使用 TARGET_OS_IPHONE 预编译器宏来实现一些 iOS 特定的东西。</p>

<p>这在过去可以正常工作,但目前 Xcode 似乎将这个宏“反转”,使得代码完成在 <code>#if TARGET_OS_IPHONE</code>block 中不起作用,即使我的构建目标是一个 iOS 应用程序。也没有语法高亮。它语法高亮并代码完成 <code>#else</code>block 中的内容,这些内容应该只发生在 macOS 目标上。 <strong>据我所知,它构建正确,只是编辑器看起来很困惑</strong>。这使得编辑代码非常烦人。我正在使用 Xcode 8.1 GM。</p>

<p>这可能是一个 Xcode 错误,还是我的项目中的某些配置搞砸了?似乎 Xcode 正在查看错误的 header 是有原因的。当我 CMD 单击 <code>TARGET_OS_IPHONE</code> 宏时,它会导航到此文件:</p>

<p> <a href="/image/fwSBh.png" rel="noreferrer noopener nofollow"><img src="/image/fwSBh.png" alt="xcode nav bar"/></a> </p>

<p>它有 macOS 的宏值,而不是 iOS 的宏值:</p>

<pre><code>#define TARGET_OS_OSX               1
#define TARGET_OS_IPHONE            0
</code></pre>

<p>似乎它选择了错误的 SDK。不知道在哪里看/把它改回正常。我查看了目标build设置,它们看起来还不错。 </p>

<p>谢谢!</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>这似乎是一个 Xcode 8.1 错误。问题似乎已在 Xcode 8.2 beta 中自行解决。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - Xcode TARGET_OS_IPHONE 似乎很困惑,bug 还是配置错误?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/40285483/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/40285483/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - Xcode TARGET_OS_IPHONE 似乎很困惑,bug 还是配置错误?