Textfield внутри оповещения не работает на iPhone, но хорошо на iPad (Swiftui)IOS

Программируем под IOS
Anonymous
Textfield внутри оповещения не работает на iPhone, но хорошо на iPad (Swiftui)

Сообщение Anonymous »

У меня есть простой список в навигационном магазине. Я поместил кнопку в нижней части списка, чтобы добавить элемент в массив, который заполняет список. Textfield каким -то образом не работает должным образом в моем реальном iPhone (выполнение 18,5 - может быть, это проблема? Хотя я также использую 18,5 на iPad). < /P>
Это не работает таким образом: когда я нажимаю кнопку «+ ингредиент», оповещение появляется правильно. Я могу ввести в него текст. Но после нажатия кнопки «Добавить» в диалоге с оповещением закрытие не работает (я помещаю точки останова в закрытие, и они никогда не достигаются). < /P>
Заранее спасибо за любые идеи. Код < /p>
import SwiftUI

struct IngredientsEditView: View {

@AppStorage("ingredients") var ingredients = starterIngredients
@AppStorage("ingredientsDone") var ingredientsDone: Bool = false
@State private var addingIngredient = false
@State private var newIngredient = ""

var body: some View {
NavigationStack {
List {
Section {
ForEach ($ingredients, id: \.self, editActions: .all) { $ingredient in
Text(ingredient)
}
.onDelete(perform: delete)
.onMove(perform: move)
}
Button("+ ingredient") {
addingIngredient.toggle()
}
.alert("New Ingredient", isPresented: $addingIngredient) {
TextField("Ingredient", text: $newIngredient)
Button("Cancel", role: .cancel) {
newIngredient = ""
}
Button("Add") {
if !newIngredient.isEmpty {
ingredients.append(newIngredient)
newIngredient = ""
}
}
}
}
.navigationTitle("Ingredients")
.toolbar {
ToolbarItem(placement: .navigationBarTrailing) {
EditButton()
}
ToolbarItem(placement: .navigationBarLeading) {
Button("Start Ordering!") {
ingredientsDone = true
}
}
}
}
}

func delete(indexSet: IndexSet) {
ingredients.remove(atOffsets: indexSet)
}

func move(from source: IndexSet, to destination: Int) {
ingredients.move(fromOffsets: source, toOffset: destination)
}
}

#Preview {
IngredientsEditView()
}


Подробнее здесь: https://stackoverflow.com/questions/795 ... ad-swiftui

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