我是新來的Objective-C編程語言。我創建一個表並創建表View的所有方法。但我不明白CellForRowAtIndexPath.Please告訴我一些它是如何工作的。cellforrowatindexpath如何在目標中工作c
-1
A
回答
0
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
這是UITableView的委託方法。返回的對象是UITableViewCell類型的。這些是您在表格行中看到的對象。 NSIndexPath有兩個這個Section和Row。
如果在視圖控制器中實現UITableViewDataSource協議,則會調用它。更簡單的方法是添加一個UITableViewController類。我強烈建議這樣做,因爲它爲您編寫了一些代碼,以便輕鬆實現可以描述表格的函數。無論如何,如果你選擇自己實現這個協議,你需要創建一個UITableViewCell對象並將其返回給任何行。看看它的類的引用來理解可重用性,因爲在表視圖中顯示的單元格被一次又一次地重複使用(這是一個非常有效的設計)。
如果您實現自定義單元格,然後我會強烈建議您使用
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
只返回這裏沒有設置空單元格。用東西一樣
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
CartTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"MyCart_Cell" forIndexPath:indexPath];
return cell;
}
,並使用該委託只是cellForRow數據源的方法之後,會叫
- (void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
if ([cell isKindOfClass:[CartTableViewCell class]])
{
CartTableViewCell *cell1 = (CartTableViewCell*)cell;
MyCartModel* data = [_myCartProductArray objectAtIndex:indexPath.row];
[cell1 setUpData:data];
}
}
和UITableViewCell的自定義類設置的UILabel數據。
相關問題
- 1. cellForRowAtIndexPath如何工作?
- 2. 目標C:@synchronized它是如何工作
- 3. 標誌如何在C中工作?
- 4. 標題在Objective-C中如何工作?
- 5. 如何使scanf在if語句目標中工作c
- 6. 如果陳述在目標C中無法正確工作C
- 7. 目標c宏不工作
- 8. createDirectoryAtPath不工作 - 目標C
- 9. NSUrlRequest不工作目標C
- 10. 目標C中的協議如何工作?
- 11. 對象複製如何工作在目標c
- 12. 如何集中cellForRowAtIndexPath?
- 13. 如何在的cellForRowAtIndexPath
- 14. 快捷鍵操作符在目標C中工作嗎?
- 15. * restrict/* __ restrict__如何在C/C++中工作?
- 16. char * argv []如何在c/C++中工作?
- 17. 如何在IOS目標C
- 18. 如何在目標C
- 19. 如何在目標C
- 20. 如何在目標C
- 21. 如何在目標C
- 22. 如何在目標C
- 23. 如何在目標C
- 24. 如何在目標C
- 25. 如何在目標C
- 26. 如何在目標C
- 27. 如何在目標C
- 28. 目標C/Autoresizing子視圖不工作
- 29. [object atIndex:row];不是工作目標C
- 30. xcode宏目標c不工作