【问题标题】:Swift: Converting this Objective C MethodSwift:转换这个 Objective C 方法
【发布时间】:2015-01-23 13:27:14
【问题描述】:

对 iOS 非常陌生,不太确定我在这里做错了什么...... 我正在关注this tutorial 来构建一个手风琴风格的UITableView,作者似乎已经实现了一个扩展UITableViewController 的委托函数。本教程不符合任何委托,因此我只能假设您能够直接编写扩展。

原代码为:

- (BOOL)tableView:(UITableView *)tableView canCollapseSection:(NSInteger)section
{
    if (section>0) return YES;

    return NO;
}

分析后我在 Swift 中构建了以下内容:

func tableView(tableView: UITableView, canCollapseSection section: Int) -> Bool {
    if section > 0 {
        return true
    }
    return false
}

我知道它是一个非常简单的函数,但我想让这个函数作为提供的基本 TableView 函数的扩展工作。目前,当我像这样调用它时,XCode 无法识别此函数

self.tableView.canCollapseSection(tableView, indexPath.section)

【问题讨论】:

  • 我目前的解决方法是按照您的建议进行操作,我可能忽略了显而易见的 - 但我相信原始目标 C 代码已编写为 UITableViewMethod 还是我错了?

标签: ios uitableview swift


【解决方案1】:

你可以这样称呼它

self.tableView(tableView, canCollapseSection: indexPath.section)

【讨论】:

  • 已经解决了,是我自己还是 XCode 6 在更新它的建议列表方面很糟糕?该方法不是他们之前的方法,我现在重新启动了XCode,它出现在tableView方法下……很奇怪。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-24
  • 2017-05-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多