gpt4 book ai didi

cocoa - 拖放而不实现 tableView :objectValueForTableColumn:row: and numberOfRowsInTableView:

转载 作者:行者123 更新时间:2023-12-03 17:26:19 25 4
gpt4 key购买 nike

我有一个带有单列的 NSTableView,它通过绑定(bind)到核心数据实体的 NSArrayController 获取其数据。数据源工作得很好,我已经能够通过实现这些方法来进行拖放工作

–numberOfRowsInTableView:
–tableView:objectValueForTableColumn:row:

以及具体的拖放方法

-tableView:acceptDrop:row:dropOperation:
-tableView:writeRowsWithIndexes:toPasteboard:

但是即使 TableView 是通过数组 Controller 提供数据的,我真的必须实现前两种方法吗?我尝试注释掉我的实现,但随后我在控制台中收到错误消息“非法 NSTableView 数据源”。 NSTableViewDataSource 协议(protocol)的文档说,如果应用程序使用 Cocoa 绑定(bind),这些方法是可选的,所以显然,我做错了一些事情。

问题:如何使表格 View 使用其现有绑定(bind)并仍然支持拖放?

最佳答案

我相信您确实需要实现这些措施来平息投诉。我相信与绑定(bind)一起使用时,这些数据源方法返回的值将被忽略。所以对于 -numberOfRowsInTableView: 你可以返回零;对于 -tableView:objectValueForTableColumn:row: 可以返回 nil。

关于cocoa - 拖放而不实现 tableView :objectValueForTableColumn:row: and numberOfRowsInTableView:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3850895/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com