首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AsyncDisplayKit AsViewController和斯威夫特3

AsyncDisplayKit AsViewController和斯威夫特3
EN

Stack Overflow用户
提问于 2016-11-24 09:52:30
回答 1查看 1.5K关注 0票数 0

尝试使用AsyncdisplayKit第一次在斯威夫特3。

有件事我不明白:

我只需设置我的ASviewController:

代码语言:javascript
复制
   final class NodeFeedViewController: ASViewController<ASDisplayNode>, ASTableDataSource, ASTableDelegate {

var tableNode: ASTableNode {
    return node as! ASTableNode
}

init() {
    super.init(node: ASTableNode())
    self.node.view.backgroundColor = UIColor.purple
    self.node.backgroundColor = UIColor.yellow
    self.tableNode.delegate = self
    self.tableNode.dataSource = self
}
required init?(coder aDecoder: NSCoder) {
    fatalError("storyboards are incompatible with truth and beauty")
}

然后我设置了我的ASTableNode:

代码语言:javascript
复制
func tableNode(tableNode: ASTableNode, nodeForRowAtIndexPath indexPath: NSIndexPath) -> ASCellNode {

    let rowCount = 15

    let node = ASTextCellNode()
    node.text = String(format: "[%ld.%ld] says hello!", indexPath.section, indexPath.row)

    return node
}

func numberOfSectionsInTableNode(tableNode: ASTableNode) -> Int {
    return 1
}

func tableNode(tableNode: ASTableNode, numberOfRowsInSection section: Int) -> Int {
    var count = 16
    return count
}

问题是,我编译是因为Xcode告诉我我的控制器不符合协议'ASCommon TableViewDataSource',使其工作的唯一方法是添加本机:

代码语言:javascript
复制
/*
@available(iOS 2.0, *)
public func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return 1
}*

/

你知道它为什么不在我的项目上工作吗?它在AsyncdisplayKit的快速示例项目上工作吗?谢谢你的帮助。

EN

回答 1

Stack Overflow用户

发布于 2017-02-16 01:30:50

首先:您需要将您的ViewController()放在AppDelegate

代码语言:javascript
复制
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    let window = UIWindow(frame: UIScreen.main.bounds)
    window.backgroundColor = UIColor.white
    window.rootViewController = UINavigationController(rootViewController: ViewController());
    window.makeKeyAndVisible()
    self.window = window
    return true
}

*ViewController()是包含表的控制器的名称。

第二:检查您的MainStoryboard是否没有与视图控制器关联的视图控制器,如果是,则只清除该字段。

第三:不要忘记在你的项目中安装吊舱。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40783013

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档