我正在使用 Xcode 15 Beta 开发一个应用程序 + 小部件。该小部件在 iOS 17 Beta 模拟器上按预期工作,但在我的 iOS 17 Beta 设备上运行时,它显示“请采用 containerBackground API”而不是所需的内容。
我四处搜索,只能找到containerBackgroundLocationButton ,但我根本没有使用 Core Location 。有人能指出为什么这里提到它吗?
我的项目中包含一个自定义字体,在我将Xcode升级到版本6并使用iOS 8作为基本SDK之前,它完全正常.现在,如果我在iOS 8模拟器或设备上运行应用程序,自定义字体将不再有效,但它仍然适用于我的iOS 7设备.有什么建议?
我正在iOS 10上使用Xcode 8.3,并且遵循了Apple的Cloud Kit快速入门文档来维护云数据的本地缓存,并且当私有数据库区域中的数据发生更改时,我的设备能够接收推送通知,但是当尝试获取区域更改时,我总是遇到以下错误:
2017-06-17 11:58:11.376807-0400 MyApp[10694:5029263] received remote notification
2017-06-17 11:58:11.897402-0400 MyApp[10694:5031532] fetch database change completed
2017-06-17 11:58:11.897606-0400 MyApp[10694:5031532] zone deletions
2017-06-17 11:58:12.320908-0400 MyApp[10694:5031561] record zone fetch completed
Error fetching zone changes for private database: <CKError 0x170256620: "Invalid Arguments" (12/2006); server message = "Bad sync continuation data"; uuid = xxxxxxxx-EFD7-459D-xxxx-xxxxxxxxxxx; container ID = "iCloud.com.mycompany.MyApp">
2017-06-17 11:58:12.332247-0400 MyApp[10694:5031561] fetch record zone changes completed
Error fetching zone changes for private database: <CKError 0x174640150: "Partial Failure" (2/1011); "Couldn't fetch some …Run Code Online (Sandbox Code Playgroud) 在我们的项目中,我们从 git tag 等派生我们的发布版本,然后使用如下 shell 脚本将其写入构建文件夹的 Info.plist:
GIT_RELEASE_VERSION=$(some git command)
defaults write "${BUILT_PRODUCTS_DIR}/${INFOPLIST_PATH%.*}" "CFBundleShortVersionString" "${GIT_RELEASE_VERSION#*v}"
这适用于所有过去的 Xcode 版本,但在 Xcode 10 的新构建系统中,这未能实际更新 info.list 文件中的 CFBundleShortVersionString。不过,该值已使用 Xcode 10 的旧版构建系统正确更新。
我在脚本中添加了一些 echo 并比较了新系统和旧系统上的构建日志,看不出任何区别:
echo "git release version:" ${GIT_RELEASE_VERSION}
echo "info path:" ${BUILT_PRODUCTS_DIR}/${INFOPLIST_PATH%.*}
echo "grv:" "${GIT_RELEASE_VERSION#*v}"
不确定是否有人在 New Build System 上遇到过类似的问题?
我尝试了苹果自己的例子:
import NaturalLanguage
let text = "The American Red Cross was established in Washington, D.C., by Clara Barton."
let tagger = NLTagger(tagSchemes: [.nameType])
tagger.string = text
let options: NLTagger.Options = [.omitPunctuation, .omitWhitespace, .joinNames]
let tags: [NLTag] = [.personalName, .placeName, .organizationName]
tagger.enumerateTags(in: text.startIndex..<text.endIndex, unit: .word, scheme: .nameType, options: options) { tag, tokenRange in
// Get the most likely tag, and print it if it's a named entity.
if let tag = tag, tags.contains(tag) {
print("\(text[tokenRange]): \(tag.rawValue)")
}
// Get …Run Code Online (Sandbox Code Playgroud) 在我们的项目中,我们指定
hidesNavigationBarDuringPresentation = false
Run Code Online (Sandbox Code Playgroud)
在某人UIViewController的身上UISearchController。searchController具有一系列范围标题。到目前为止,它在iOS 10上都可以正常运行,但是在iOS 11 beta中,似乎hidesNavigationBarDuringPresentation的错误设置被忽略,使显示混乱。为确保不是我项目中的其他因素,我创建了一个仅有一个项目的准系统测试项目UITableViewController,并UISearchController使用另一个simple 进行了初始化UITableViewController。以下代码位于viewDidLoad()主视图控制器上的方法中:
self.title = "Search Bar Scope Test"
let searchViewController = SearchViewController(style: .plain)
searchController = UISearchController(searchResultsController: searchViewController)
searchController!.searchBar.sizeToFit()
tableView.tableHeaderView = searchController!.searchBar
searchController?.hidesNavigationBarDuringPresentation = false
searchController?.searchBar.scopeButtonTitles = ["scope 1", "scope 2", "scope 3", "scope 4", "scope 5"]
Run Code Online (Sandbox Code Playgroud)
当最后一行分配scopeButtonTitles不存在时,导航栏不会隐藏,搜索栏仍保持其原始位置。但是,在存在该行的情况下,iPhone和iPad上的都NavigationBar变为隐藏状态,searchBar加号和范围按钮在纵向模式下都向上移动,而在横向模式下保持不变(即使范围按钮很多并且不能一起使用)线)。
有人遇到过吗?这是iOS 11中的错误或预期行为(虽然不是我们的预期行为),并且有任何解决方法吗?
谢谢!