我一直在谷歌搜索,但我找不到任何直接的教程或答案,所以我决定问。
我理解并且能够将新行插入到组 uitableview 中insertRowsAtIndexPath:withRowAnimation
。
我现在想做的不是插入新行,而是插入新部分,每个部分包含 2 行。
我该怎么做,或者我应该研究什么?
我试过的:
一个 NSMutableArray self.objectArray
。
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return self.objectArray.count;
}
在tableView:cellForRowAtIndexPath
中,我这样做了:
UITextField *itemNameTextField = (UITextField *)[cell viewWithTag:100];
NSString *itemName = self.objectArray[indexPath.section][@"itemName"];
[itemNameTextField setText:itemName];
[itemNameTextField addTarget:self action:@selector(updateItemName:) forControlEvents:UIControlEventEditingChanged];
我有一个在点击时调用的条形按钮项目addItemBarBtnTapped:
:
- (IBAction)addItemBarBtnTapped:(id)sender
{
// Create item object.
NSMutableDictionary *itemObject = [[NSMutableDictionary alloc] init];
itemObject[@"itemName"] = [NSString stringWithFormat:@"Item %d", self.billItemsArray.count+1];
itemObject[@"itemPrice"] = @"0";
itemObject[@"itemSharersArray"] = [[NSMutableArray alloc] init];
// Add itemObject to objectArray, which reflects the new number of sections, and reloadData to reflect changes.
[self.objectArray addObject:itemObject];
[self.tableView reloadData];
}
这就是我目前正在做的事情,它之所以有效,是因为我看到单元格中 textFields 中的值具有正确的值,例如项目 1、项目 2 等。(这些值设置并存储在addItemBarBtnTapped
.
但是,我认为这不是“将部分添加到 tableView”的正确方法,它缺少“动画”,并且我希望每次添加部分时每部分添加 2 行。
我找不到与我的问题相关的答案,也没有任何关于在 Internet 上添加部分的教程,所以我非常感谢你们的帮助!
谢谢!