この機能を実現するには、UIStackViewまたはUITableViewを使用できます。
UITextFieldを作成するには、次のスニペットを使用します。
、UITextFieldの追加TextFieldを作成し、
func insertArrangedSubview(_ view: UIView, at stackIndex: Int)
方法を使用して、それを追加するにはStackView、
- を使用して
let tf = UITextField()
tf.borderStyle = .roundedRect
tf.setContentHuggingPriority(UILayoutPriority(integerLiteral: 750), for: .horizontal)
tf.setContentHuggingPriority(UILayoutPriority(integerLiteral: 750), for: .vertical)
。詳細はhereを参照してください。
- すべてのUITextFieldを削除するには、
func removeArrangedSubview(_ view: UIView)
メソッドを使用します。ここでは、削除するビューを指定する必要があります。すべてのサブビューの配列を取得するには、UIStackViewのarrangedSubviews
プロパティを使用します。より詳しい情報は、あなたがUITableViewCellのがそれでのUITextFieldを有するように構成する必要がありますのUITableView、 を使用してhere
を見つけることができます。セルを取得したら、すべてのUITextFieldのカウントを保持する変数を保持します。ユーザータッププラスボタンを押すたびに、func insertRows(at indexPaths: [IndexPath], with animation: UITableViewRowAnimation)
を使用してTextFieldを追加します。 あなたの人数を増やすことを忘れないでください。。詳細はhereを参照してください。カウント変数を大きくしてテーブルをリロードすることもできます。
すべてを削除するには、func deleteRows(at indexPaths: [IndexPath], with animation: UITableViewRowAnimation)
を使用するか、単にカウント変数をゼロに設定してfunc reloadData()
を使用します。詳細はhereとhere
あなたは 'UIStackView'を使って制約を加えるという苦労を省くことができます。次に、新しいテキストフィールドを追加します。 私はこのことをどうやって行うのか分かりませんが、私は見ています。これは楽しいと思う。 – Marmelador
https://stackoverflow.com/questions/1196436/uitextfield-in-uitableviewcell-adding-new-cells –