Ссылки навигации не работают после последнего обновления Xcode

После обновления Xcode до 12.5 я запустил свой проект через симулятор, и некоторые ссылки теперь не работают должным образом, они работали правильно до обновления.

Когда я нажимаю на ссылку, создается новое представление, но затем сразу закрывается и возвращается к предыдущему представлению. Пример кода навигационной ссылки показан ниже, этот формат кода используется во многих ссылках в проекте, и они по-прежнему работают, но некоторые из них не работают, и нет никакой логики для того, какие из них работают, а какие нет, это выглядит случайным.

      HStack {
   
                
          NavigationLink(destination: AllM4Hole11View(scoreManager: scoreManager, course: course), tag: "Hole11", selection: $selection) { EmptyView() }
                                
          ZStack {
                                
                 Button("") {
                       self.selection = "Hole11"
                 }.buttonStyle(ButtonNavigate())
                                    
                 Text("Go To Hole No \(course.hole11no)")
                 .foregroundColor(ColorManager.Purple)
                 .font(.system(size: 16, weight: .bold, design: .rounded))
                 }
                 }

Похоже, что при нажатии на ссылку создается целевой вид, но затем немедленно активируется функция «назад» и возвращает меня к предыдущему экрану.

Что касается функции "назад", мой код выглядит следующим образом

      .navigationBarBackButtonHidden(true)
.navigationBarItems(leading: Button(action: {
     self.mode.wrappedValue.dismiss()
}){
 Text("<< Back To Hole No \(course.hole10no)")
     .foregroundColor(ColorManager.Purple)
})

Этот формат кода снова используется в различных местах проекта, где он работает правильно.

Я также установил код на iPhone, чтобы убедиться, что это проблема симулятора, но возникают те же проблемы.

У кого-нибудь были подобные проблемы или это известная ошибка в последнем обновлении Xcode? Будем признательны за любые советы или обходные пути.

Заранее спасибо.

1 ответ

У меня была та же проблема, и я не мог найти способ исправить ее в версии 12.5. Но в 12.5 я обнаружил, что моя NavigationLink иногда работает в зависимости от существования других NavigationLink, а две NavigationLink совершенно не связаны. Я очень запутался, не знаю, проблема ли в обновлении 12.5.

Другие вопросы по тегам