首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何设置NSTableColumn headerCell stringValue?

如何设置NSTableColumn headerCell stringValue?
EN

Stack Overflow用户
提问于 2015-01-04 05:31:06
回答 1查看 306关注 0票数 0

这些文档使它看起来就像这样简单:

代码语言:javascript
复制
var tc = NSTableColumn(identifier: "mycolumn")
tc.headerCell.stStringValue("foo")

最后一行代码是编译错误,我不明白。最重要的是,我得到了几条不同的编译错误消息,这与代码完全相同,这取决于XCode的心情。我看到了以下编译错误:

  1. AnyObject没有名为“stStringValue”的成员
  2. 无法将表达式的类型“NSString”转换为键入“StringLiteralConvertible”

当我尝试设置一个变量并将其放入其中时,我就会得到这样的结果:

  1. 无法将表达式的类型“String”转换为“String?!”

当我尝试"foo \(bar)"变体时,我得到了这样的结果:

  1. 找不到“convertFromStringInterpolationSegment”成员

有趣的是,如果我声明一个变量的类型为String?!,它就表示为Cannot convert the expression's type 'String?!' to type 'String?!'

我不明白怎么回事。这是个虫子吗?

如果我在操场上尝试这一点,操场实际上希望用一个额外的参数自动完成,这种格式:

代码语言:javascript
复制
tc.headerCell.setStringValue("foo", resolvingEntities: false)

这没有编译时错误,但在运行时会导致seg错误。这种格式也不在文档中。

我真的不知道发生了什么,而错误信息也没有帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-04 05:56:24

尽管出现了可怕的错误信息,我最终还是让它发挥了作用。问题是headerCell被输入为AnyObject,所以我不得不转换它。第二个问题是,在迅捷的土地上,这是一种财产,而不是一种方法。

这终于奏效了:

代码语言:javascript
复制
var tc = NSTableColumn(identifier: "mycolumn") 
let hc = column1.headerCell as NSTableHeaderCell
hc.stringValue = "foo"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27762713

复制
相关文章

相似问题

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