【发布时间】:2021-01-28 04:24:28
【问题描述】:
所以我犯了将我的一台设备升级到 iOS 14(当前为 iOS 14.0.1)的“错误”,我发现现在我无法再通过 xCode 部署到该设备,因为我仍在使用xCode 11.7 而不是最新版本的 xCode 12。
由于使用了 testflight,我仍然能够使用 iOS 14 部署到设备上,无论它是在最新的 iOS 上,但我得到了一些非常奇怪的结果!
这是运行在 iOS 13.7 设备上的屏幕应该的样子:
与设备使用更新的 iOS 14.0.1 版本时的结果对比:
有没有其他人目睹过这个!?
几个问题:
-
文本如何从黑色变为蓝色!?
-
主图全是蓝色 vs 渲染真实图!?
-
在“Origin”选择器的情况下,国旗的图像也是全蓝色的,而不是正确渲染?
这是在 iTunes Store 中上载出售的任何应用程序的预期行为,该应用程序是在旧版本的 xCode(我的案例 xCode 11.7)下编译的,与最新版本相比?
我的意思是,在这种情况下,任何人都下载了在旧版本 xCode 中创建的应用程序的当前版本,但该用户的手机上安装了最新版本的 iOS,那么应用程序会变得一团糟!?如果是这样,苹果在想什么!?
其他人可以提供他们解决它的方法,或者他们的经历吗?
*** 更新 ***
为文本字段和选择器提供代码:
这是“默认”文本字段:
TextField("Cigar Name", text: $model.cigarName)
这是自定义选择器的代码:
NavigationLink(destination: CountryPicker(cCode: $countryCode, cName: $countryName)) {
Text("Origin")
if countryCode != "" {
Spacer()
HStack() {
Image(uiImage: UIImage(named: "CountryPicker.bundle/Images/\(countryCode)")!)
.clipShape(Circle())
Text(countryName)
}
}
}
“默认”选择器的代码:
Picker(selection: $selectedCigarStrength, label: Text("Strenght")) {
ForEach(0 ..< cigarStrength.count) {
Text(self.cigarStrength[$0])
}
}
***最新更新***
所以我得到了我的新 MacBook 和 d/l xCode 12,用于部署到装有 iOS 14.0.1 的 iphone,相比之下,屏幕截图如下所示:
如您所见,它看起来完全不同!!!好消息是蓝色图像重新在工作表中呈现正确的图像。坏消息是文本仍然是蓝色的!?我猜开发人员将不得不严格指定未来的文本颜色!?这很奇怪...如果没有声明颜色,我想它应该默认保持 .black... 就像在所有其他版本的 xCode 中一样!?
还要注意,表单不再延伸到屏幕边缘,日期选择器确实发生了变化(我真的很喜欢,最后他们在新操作系统中得到了改进)。
【问题讨论】:
-
为什么不安装 Xcode 12?
-
@Rob 老实说,我没有内存来下载和安装 xcode 12,苹果炸毁了 IMO 的内存要求。但它比这更大......是苹果对其开发人员的预期行为!?顺便说一句,我将得到一个新的 macboook,所以我会从明天开始 d/l xcode 12,但我会告诉你这是否解决了“不兼容”的问题
-
你为这些文本提供了什么颜色?
-
@Rob 我已经为文本字段和选择器添加了相当多的“默认”代码。
-
@Rob I d/l xCode 12 并且文本字段颜色保持蓝色.. 似乎“默认”颜色是蓝色,您需要为文本字段指定黑色。