Ste*_*all 1 iphone objective-c uitableview ios
我正在尝试编写一个使用tableView的单元测试,但是在访问单元格时遇到了麻烦。
这始终为零:
- (void)testDidEndEditingUpdatesLiftRecords {
TextViewCell *cell = (TextViewCell *) [tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]];
Run Code Online (Sandbox Code Playgroud)
尽管我在设置中设置了数据源
- (void)setUp {
[super setUp];
source = [[MyDataSource alloc] init];
tableView = [[UITableView alloc] init];
[tableView setDataSource:source];
Run Code Online (Sandbox Code Playgroud)
可能是什么
正如文档所说,该UITableView方法cellForRowAtIndexPath:返回“代表表格单元格的对象,或者nil单元格不可见或indexPath超出范围”。因此,如果单元格当前在表格视图上不可见,则此方法将返回nil。
请注意,此方法不应与tableView:cellForRowAtIndexPath:我们在UITableViewDataSource. 这些名字非常相似,令人困惑。
张贴在这里(SWIFT 3)我只好打电话给cellForRow数据源cellForRowAt函数,而不是从tableView.cellForRow功能直的访问
//this
let cell = controller.tableView(controller.tableView, cellForRowAt: IndexPath(row: 0, section: 0))
//instead of this
let cell = controller.tableView.cellForRow(at: IndexPath(row: 0, section: 0))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1237 次 |
| 最近记录: |