如何知道当SwiftUI键盘搜索按钮点击.可搜索的搜索窗口



我在SwiftUI中使用.searchable修饰符。当用户按下键盘上的搜索键时,有什么方法可以知道吗?我知道如何通过使用uiviewrepresable和searchController来做到这一点。我想知道是否有一个SwiftUI的方式做它与。searchable修饰符

添加。onsubmit (of: .search)修饰符。这样的:

List {
ForEach(results, id: .self) { result in
Text(result)
}
}
.searchable(text: $searchText)
.onSubmit(of: .search) {
// Search button tapped. Perform operation here
}

如果对你来说是正确的,标记为正确答案。

当我写这篇文章时,这仍然是macOS 12的测试版(但不是i/iPad/tvOS 15),所以不适合这个论坛,但是…

搜索有一个实例属性:

var isSearching: Bool { get }

可以通过以下方式传递给子视图:

@Environment(.isSearching) var isSearching

,随后从var

中询问查找Apple文档

最新更新