Кнопка «Готово» на панели инструментов исчезает после представления и закрытия оповещения в SwiftUIIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Гость
 Кнопка «Готово» на панели инструментов исчезает после представления и закрытия оповещения в SwiftUI

Сообщение Гость »


Проблема в том, что я добавил кнопку «Готово» на панели инструментов, но когда я показываю предупреждение в том же представлении, а затем перефокусируюсь на текстовое поле, кнопка «Готово» на панели инструментов автоматически исчезает в SwiftUI. В TitleWithTextfield есть текстовое поле и метка. Я реализовал проверки; например, если текстовое поле пусто и пользователь нажимает кнопку «Отправить», отображается предупреждение, предлагающее пользователю ввести свое имя или адрес электронной почты. Однако после того, как пользователь нажмет кнопку «ОК», а затем снова коснется текстового поля, кнопка «Готово» на панели инструментов автоматически исчезнет.

Вот код:
var body: some View { НавигацияВью { ZStack { AppColors.primaryColor .ignoresSafeArea(.all) ВСтек { NavigationViewWithTitleInCenter(title: «Обратная связь», backButtonAction: { // Вызовите здесь свою функцию PresentationMode.wrappedValue.dismiss() print("Нажата кнопка "Назад!") }) Разделитель() ВСтек { TitleWithTextfield (заполнитель: «Введите имя», текст: $name) TitleWithTextfield (заполнитель: «Введите адрес электронной почты», текст: $email) TitleWithTextfield (заполнитель: «Введите тему», текст: $subject) TitleWithTextView (заполнитель: «Введите сообщение», текст: $description) PrimaryButton(title: «Отправить»).onTapGesture { self.didTapSubmit() } } .toolbar { ToolbarItemGroup(размещение: .keyboard) { Разделитель() Кнопка("Готово") { UIApplication.shared.sendAction(#selector(UIResponder.resignFirstResponder), to: ноль, от: ноль, для: ноль) } .foregroundColor(.blue) } } Разделитель() } .blur(radius: isLoading ? 1 : 0) // Применяем размытие, когда isLoading имеет значение true .loadingOverlay(isLoading: isLoading) } .alert(isPresented: $showAlert) { Alert(title: Text("Message"), message: Text("\(alertMessage)"), ignoreButton: .default(Text("OK"))) } } }
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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