繁体   English   中英

用可编辑的UITextfields插入新的UITableView行

[英]INSERT a new UITableView row with Editable UITextfields

我已经为此工作了很多天,似乎无法使其正常工作。 可能甚至没有,但是一定有办法!

我想插入一个新的uitableview行,其中包含两个在插入后可编辑的uitextfields。 我读过的所有内容都表明您应该在添加单元之前更新数据模型数组,这意味着texfields需要在其中添加文本,然后在插入行之前将其添加到数组中。 我尝试添加提示文本,但是一旦添加了单元格,我就可以进入文本字段,但是无法更改已经存在的内容(提示文本)。 文本视图除了能够利用它们之外,是无响应的。 这个怎么做?

我正在提供一个UIDatePicker来填充应用程序首次启动时创建的单行的文本字段。 我希望用户能够在第二次(或更多!)阅读本书时添加另一行。 添加下一行后,文本字段将不再使用datePicker的值进行更新。

我试图在其中使用带有文本字段的Alertview(我使用的是URBAlertView),以便用户可以在添加新行之前添加日期,但是我无法将其保留。

如果您需要更多代码,或者甚至有可能,请告诉我。 在此先感谢您的帮助!

- (IBAction)addNewRowButtonTapped:(id)sender {

[self showDatePicker];

[self.tableView beginUpdates];

_cell.startDateTextfield.text = @"add start date";
_cell.finishDateTextfield.text = @"add finish date";

//these two lines give me errors and causes a crash
//[_book.startReadArray addObject:_cell.startDateTextfield.text];
//[_book.finishReadArray addObject:_cell.finishDateTextfield.text];

NSArray *paths = [NSArray arrayWithObject:[NSIndexPath indexPathForRow:[_book.startReadArray count]-1 inSection:1]];
[[self tableView] insertRowsAtIndexPaths:paths withRowAnimation:UITableViewRowAnimationTop];
_numberOfRows ++;

[self.tableView endUpdates];

}

这应该相对简单,使用UITextField创建一个自定义视图,确保已将其正确注册到tableView中,以便可以将其出队,并且UITextField应该可用。

我为您设置了一个演示项目,演示了这一点: https : //github.com/ekscrypto/Swift-Tutorial-InsertTextfield

祝好运!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM