在以前的 iOS 版本中,我以編程方式推送 NavigationLink
NavigationLink(isActive: $searched, destination: { SearchView(originalSearchPhrase: $searchedPhrase) }, label: {})
并在我想要推送時切換 isActive 變數。但是,在 iOS16 中,所有帶有 isActive 的 NavigationLink 都已棄用。還有辦法以編程方式推送 NavigationLinks 嗎?
uj5u.com熱心網友回復:
我們只需要將相應的鏈接值推送到NavigationStack路徑中。

這是主要部分。使用 Xcode 14 / iOS 16 測驗
enum Dest: Hashable {
case search, details
}
@State private var path: [Dest] = []
var body: some View {
NavigationStack(path: $path) {
Button("Go search") { path.append(.search) } // << here !!
Divider()
NavigationLink(value: Dest.search) {
Text("Search")
}
.navigationDestination(for: Dest.self) {
switch $0 {
case .search:
Text("Search Destination Here")
GitHub上的完整代碼
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/489132.html
