我正在创建一个邮件屏幕,使用它在视觉上类似于 iOS 本机电子邮件应用程序。它看起来像这样(两个图像都在同一个屏幕上。第一个是上半部分,第二个是其余部分)。
不同之处在于我的邮件屏幕除了普通的To、Cc、Subjet字段外,还有更多自定义字段。
我正在使用 aUITableViewController
来创建它。下面是一个创建单元格的代码片段(每个单元格几乎相同)。
- (UITableViewCell *)tokenTableView:(TITokenTableViewController *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = nil;
self.tableView.frame = CGRectMake(0,0,320,320);
UIView *contentSubview = nil;
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifierSubject];
if(!self.txtSubject) {
self.txtSubject = [[UITextField alloc] initWithFrame:CGRectMake(0, 0, 0, 0)];
self.txtSubject.frame = CGRectMake(10, cell.frame.size.height / 2 - self.txtSubject.font.lineHeight / 2, tableView.tableView.bounds.size.width, 30);
self.txtSubject.placeholder = @"Subject";
[self setupMailData:indexPath.row];
}
contentSubview = self.txtSubject;
}
说,我打开一个草稿。输入字段中的所有详细信息都已填写,并且没有更改任何内容,我点击发送,它使应用程序崩溃。我知道这是什么原因造成的。问题是通常在您向下滚动时会创建位于屏幕可视部分下方的单元格,对吗?但在这种情况下,如果我在不向下滚动的情况下发送它,但视口下方的那些单元格不存在,因此它会引发错误。
如果我打开草稿,向下滚动并点击发送,它工作正常。
我需要知道是否有办法一次创建所有这些单元格。甚至最初位于视口下方的单元格。不依赖于用户向下滚动。
我希望你对我的情况有所了解。任何人都可以提出解决方案吗?
谢谢你。