15

私の使用例ではTextField、 で利用可能なアイテムの下に を配置する必要があり、Listそれを使用してTextFieldにアイテムを追加できますList

最初は、リスト項目はありません (items配列は空です)

これは最小限の再現可能な例です

import SwiftUI

struct ContentView: View {
    @State var itemName = ""
    @State var items = [String]()

    var body: some View {
        NavigationView {
            List {
                ForEach(self.items, id: \.self) {
                    Text($0)
                }

                VStack {
                    TextField("Item Name", text: $itemName)
                        .textFieldStyle(RoundedBorderTextFieldStyle())

                    Button(action: {
                        self.items.append(self.itemName)
                        self.itemName = ""

                    }) {
                        Text("Add Item")
                    }
                }
            }
        .navigationBarTitle(Text("Title"))
        }
    }
}

に何かを入力して[アイテムの追加]TextFieldをクリックすると、新しいアイテムをリストに追加できます。使用して追加したすべてのアイテムは、. そのため、 (Appleのリマインダーアプリと同じように)でダウンします。ButtonTextFieldListTextFieldList

アプリに多くのアイテム (7 つ以上のアイテム) がある場合、キーボードが表示されたTextFieldときにキーボードが を覆い、 が見えなくなりTextFieldます。
このスクリーンショットを確認してください:

私が知りたいのは、リストを自動的にスクロールして(ビューを上に移動して)、 TextFieldキーボードがいつ表示されるかを確認する方法です(Appleのリマインダーアプリのように)。

4

1 に答える 1