ios - 如何在 Objective-C 中创建对象?

标签 ios objective-c uitableview

我是 iOS 开发新手。目前我正在阅读本教程 http://www.appcoda.com/how-to-handle-row-selection-in-uitableview/ .我在阅读这一行时遇到问题

UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
cell.accessoryType = UITableViewCellAccessoryCheckmark;

我知道 objective-c 中的对象是通过以下方式创建的

 classname *objecname = [[classname alloc]init];

我的困惑点在这里 UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];

这里如何创建cell对象?请告知详情。

最佳答案

根据您链接到的教程,我假设您正在处理选择一行。选择一行时,您可以访问该行的 NSIndexPath,它包含两部分:

  1. 单元格部分
  2. 单元格的行

有了这些信息,让我们分解一下令人困惑的代码:UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];

UITableViewCell *cell

这部分声明您的变量。您已选择将其命名为 cell。您可以很容易地将它命名为 theCell,如下所示:

UITableViewCell *theCell

* 表示您正在声明一个指针,它只是对实际对象或 TableView 单元格的引用。

[tableView cellForRowAtIndexPath:indexPath]

tableView 指的是刚刚选中的UITableViewUITableView 有一个名为 cellForRowAtIndexPath 的方法,该方法的作用是检索 UITableView 指定部分和行的单元格。在您的例子中,它会检索您刚刚选择的行并将对其的引用存储在您的 cell 变量中。

当声明一个对象时,是的,它会采用以下语法:

classname *objecname = [[classname alloc] init];

这里的关键词是new。在 UITableView 中选择行时,您不想创建新的单元格,因为您无法选择不存在的单元格。您想要获取用户刚刚选择的单元格。

关于ios - 如何在 Objective-C 中创建对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28923447/

相关文章:

ios - UIImageView 缓存策略 - AFNewtorking

objective-c - Objective-C 中 const 实例变量的替代方案?

objective-c - 在 getter 方法中设置属性是不是很糟糕?

ios - 如何以编程方式添加可重用的自定义 View ? ( swift )

ios - Alamofire 线程甚至可以在屏幕上的另一个 View Controller 上工作吗? ios

uikit - 在 iOS 上,我可以访问系统提供的字体的 TTF 文件吗?

ios - 如何识别选定的静态 UITableViewCell

arrays - swift : TableView Cell data change with the Button Actions

ios - 如何在 Swift3 ios 中获取上周的天数

ios - didReceiveRemoteNotification 将用户带到正确的 View