SwiftUI: закрытие всплывающего окна возвращает меня в неожиданный пункт назначенияIOS

Программируем под IOS
Ответить
Anonymous
 SwiftUI: закрытие всплывающего окна возвращает меня в неожиданный пункт назначения

Сообщение Anonymous »

Я разрабатываю приложение для iOS с использованием Swift. Сейчас я использую xcode 15.3
У меня проблема с NavigationView
Скажем, мое приложение есть 2 страницы (страница A, страница B) и всплывающий лист C.
Я обернул все свое приложение с помощью NavigationView().

Код: Выделить всё

//Page A
struct ContentView: View {
var body: some View {
NavigationView {
Main()
.navigationBarHidden(true)
}
}
}
Со страницы А я могу перейти на страницу Б, нажав кнопку

Код: Выделить всё

//Page B
NavigationLink(
destination: LookupFlightPage().navigationBarBackButtonHidden(true),
tag: 1,
selection: $clickItem) {
CategoryItem(icon: "airplane.circle", name: "Flights").onTapGesture {
clickItem = 1
}
}
Со страницы B я могу открыть всплывающий лист C

Код: Выделить всё

BottomLineControl(label: "From", icon: {
Image(systemName: "airplane")
}, searchText: searchedData.from, onTap: {
popoverOpen1 = true
}).sheet(isPresented: $popoverOpen1, content: {
FlightSearch(popoverOpen: $popoverOpen1, dataChanged: $searchedData.from)
})
И в C я могу отменить лист, чтобы вернуться на страницу B (установить состояние привязки popoverOpen1 = false). НО проблема в том, что когда я отменил лист C, это привело меня к страница А.

Код: Выделить всё

HStack {
SearchField(searchText: "")
Text("Cancel").font(.system(size: 14.0)).foregroundColor(.white).onTapGesture {
popoverOpen = false
}
}
Проблема возникла, когда я обновил свой xcode 12.x до xcode 15.3. В старой версии все было хорошо. Поэтому я думаю, что это может быть связано с некоторым использованием NavigationView
Проблема возникла, когда я обновил свой xcode 12.x до xcode 15.3. p>
Спасибо

Подробнее здесь: https://stackoverflow.com/questions/786 ... estination
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»