テーブルビューでセルを追加および削除することに関する多くの投稿を見てきました。私が欲しいのは、ユーザーがセルの追加ボタンをクリックしたときに、そのセルにテキストを入力する内容をユーザーに尋ね、次にユーザーがセルにテキストを入力し、それがテーブルビューに追加されることです。誰でもこれを達成する方法を教えてもらえますか?
3 に答える
セルではなく、フッターまたはヘッダーに追加ボタンを配置します。セルの追加を管理する方が簡単であるというのが私の個人的な意見です。
これとは別に、問題が正確にはわかりません。コントローラーを適切なデリゲートとして作成すると、関連するすべてのメソッド、特に次のメソッドにアクセスすることで、セルを簡単に追加または削除できます。
- (void)tableView:(UITableView *)aTableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
if (editingStyle == UITableViewCellEditingStyleInsert) {
// ......
}
}
これは次のように呼び出されます:
[yourTableView insertRowsAtIndexPaths:[NSArray arrayWithObject:newIndexPath ] withRowAnimation:UITableViewRowAnimationAutomatic];
のようなメソッドがあり(UITableViewCell *) createNewCellForTableView
ます。これにより、UITableViewCell が作成されて返されます。
このメソッドをCellForRowAtIndexPath
使用して、 のすべてのセルを作成しますtableView
。[tableView reloadData];
これは、新しいセルを追加するたびに新しいセルを作成する必要があるため、この方法で行う必要があります。
最後に、新しいセルを作成した後、ボタンの IBAction で、ADD
必ず tableView をリロードしてください。
〜より簡単な代替:
テキストを追加するユーザーを探しているだけなのでtextField
、uitableViewcell に埋め込むことができます。ユーザーが入力を終えるとすぐに、テキストを に追加してdataSource
( に入力する配列tableView
)、tableView をリロードできます。textField があること、enabled
またはdisabled
希望どおりであることを確認してください。