我想基于我的
创建自己的UITableViewControllerclass ProtectedViewController: UIViewController {
//...
}
Swift不支持多重继承,因此我复制了源代码UITableViewController
,并将UIViewController
更改为ProtectedViewController
类:
@available(iOS 2.0, *)
class ProtectedUITableViewController : ProtectedViewController, UITableViewDelegate, UITableViewDataSource {
public init(style: UITableViewStyle)
public init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?)
public init?(coder aDecoder: NSCoder)
public var tableView: UITableView!
@available(iOS 3.2, *)
public var clearsSelectionOnViewWillAppear: Bool // defaults to YES. If YES, any selection is cleared in viewWillAppear:
@available(iOS 6.0, *)
public var refreshControl: UIRefreshControl?
}
但是有很多错误:
答案 0 :(得分:0)
代码无法编译,因为您尚未实现这些方法。这看起来像.h文件看起来像Objective-C(只是方法签名)。
您应该为所有 init 添加实施。例如。:
init(style: UITableViewStyle) {
//do stuff in this init
}