我读过苹果的文档,对于像我这样的Objective-C初学者来说,这是不可理解的.我试图按照这个link示例实现multicolumn UITableView,但它不起作用,所以我需要理解cellForRowAtIndexPath是如何工作的,因为对我个人来说,这个方法似乎非常复杂.

1) 它的回报是什么?UITableViewCell? 但为什么看起来这么奇怪?

-(UITableViewCell *)tableView:(UITableView *)tableView 
  • 那是什么?你能解释一下吗?

2) 它是如何被调用的?更重要的是,我该如何将它连接到某个UITableView???如果我有两个UITableView,分别命名为firstTableViewsecondTableView,我希望它们不同(以不同的方式执行cellForRowAtIndexPath),该怎么办?我该怎么把我的UITableViews和这个联系起来

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

该方法接受NSIndexPath,而不是UITableView.我该怎么办?

推荐答案

1) 函数返回表格视图的单元格是吗?因此,返回的对象是类型UITableViewCell.这些是您在表的行中看到的对象.对于表视图,该函数基本上返回一个单元格.

2) NSIndexPath基本上是两件事-

  • 你的部门
  • 你的排

因为您的表可能被划分为许多部分,每个部分都有自己的行,所以这NSIndexPath将帮助您准确地识别哪个部分和哪一行.它们都是整数.如果你是一个初学者,我会说只try 一个部分.

如果在视图控制器中实现UITableViewDataSource协议,则会调用它.更简单的方法是添加UITableViewController类.我强烈推荐这一点,因为Apple已经为您编写了一些代码,可以轻松实现描述表的函数.无论如何,如果您 Select 自己实现这个协议,那么您需要创建一个UITableViewCell对象,并为任何行返回它.查看它的类引用以了解可重用性,因为在表视图中显示的单元格被反复重用(顺便说一句,这是一个非常有效的设计).

当你有两个表视图时,看看这个方法.表视图被传递给它,因此您不应该对此有问题.

Objective-c相关问答推荐

如何限制 UITextField 中的特殊字符(点和下划线除外)?

MKMapView 上的 UIPanGestureRecognizer?

NSNumberFormatter 和 'th' 'st' 'nd' 'rd' (序数)数字结尾

如何在情节提要中为视图控制器提供标识符?

从 NSError 返回 NSString

增加推送通知徽章 iPhone

判断 NSInteger 是奇数还是偶数

如何在 Objective-C 中创建静态方法?

首次提交应用内购买以供审核

如何禁用 UIButton?

如何以编程方式移动 UIScrollView 以集中在键盘上方的控件中?

如何将小时数添加到 NSDate?

如何在 Objective-C (iOS) 中判断 NaN 值

Core Text在iOS中计算字母框架

协议和代表之间的区别?

BOOL到 NSString

iPhone - dequeueReusableCellWithIdentifier 用法

围绕其中心旋转 UIView 保持其大小

如何在 Objective-c 中将数组声明为常量?

公开只读但具有私有设置器的 Objective-C 属性