gpt4 book ai didi

objective-c - 无法创建 NSImage?

转载 作者:行者123 更新时间:2023-12-03 16:50:56 25 4
gpt4 key购买 nike

每当我这样做时:

xxx = [NSImage imageNamed:@"Package.png"];

xxx 加载,但它的宽度和高度保持为 0。每当我尝试将其加载到 NSImageCell 中时,我都会收到此错误:

NSImageCell's object value must be an NSImage.

有人可以帮我吗?我以前从未遇到过这个问题。

编辑:抱歉,我错过了这一点。因此,当我在数据源委托(delegate)中执行此操作时,它不起作用,并且在“return cell;”之后显示上述错误。 '。

NSImageCell* cell = [[NSImageCell alloc] init];
[cell setObjectValue:xxx]; // Using imageNamed doesn't help either

编辑 2:这变得越来越令人恼火。我不明白发生了什么,但图像正确加载了高度和宽度,但当我将其添加到 NSImageCell 时它仍然会提示。

alt text

最佳答案

我明白了,所以 TableView 方面毕竟是相关的。

作为数据源,您的工作是返回(并在用户编辑的情况下接收)列中单元格的对象值。

但是你没有返回这样的值;你正在归还一个手机。因此,您尝试将图像单元格(由数据源创建)设置为图像单元格(该列拥有的现有单元格)的值。

日志消息表明您在创建列时已将列的单元格设置为图像单元格,因此您现在需要做的就是更改数据源以始终返回列的对象值,而不是单元格。对于图像列,返回图像。对于文本列,返回字符串。

请注意,NSTableView 的工作方式与 UITableView 不同,其中 UITableViewCells 是 UIView,并且屏幕上的单元格数量与行数一样多;在 NSTableView 中,每个 NSTableColumn 都获取一个且仅有一个数据单元格,并且该单元格用于绘制每一行的该列。单元格绘制其对象值,您可以通过从数据源方法返回该对象值(对象值)来将其提供给单元格。

有关控件(NSTableView 是 NSControl 的一种)及其单元格的文档是 Control and Cell Programming Guide .

关于objective-c - 无法创建 NSImage?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3517123/

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