我正在使用来自控制器类的NSSArray属性的数据,使用自定义表格视图单元格创建表格视图。当我运行该应用程序时,只有表格视图的第一行显示正确。
#import "MainTableViewController.h"
@interface MainTableViewController ()
@property (strong, nonatomic) NSArray* items;
@end
@implementation MainTableViewController
- (void)viewDidLoad {
[super viewDidLoad];
_items = @[@"Item1", @"Item2", @"Item3"];
}
#pragma mark - Table view data source
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return _items.count;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
TableViewCell* tableViewCell = [tableView dequeueReusableCellWithIdentifier:@"TableViewCell"];
if (!tableViewCell) {
UINib* tableViewCellNib = [UINib nibWithNibName:@"TableViewCell" bundle:nil];
[tableView registerNib:tableViewCellNib forCellReuseIdentifier:@"TableViewCell"];
tableViewCell = [tableView dequeueReusableCellWithIdentifier:@"TableViewCell"];
}
return tableViewCell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
CalculatorViewController* calculatorViewController = [[CalculatorViewController alloc] init];
[self presentViewController:calculatorViewController animated:YES completion:nil];
}
- (void)tableView:(UITableView *)tableView willDisplayCell:(TableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
cell.label.text = [_items objectAtIndex:indexPath.row];
}
第一行呈现Item1,而其余行仅呈现每行的前两个字符和点。 ex It ...用于第二行和其他行。预期的结果是它将所有内容显示在_items数组中。