【问题标题】:'NSTableViewAnimationSlideLeft' undeclared (first use in this function)'NSTableViewAnimationSlideLeft' 未声明(在此函数中首次使用)
【发布时间】:2011-10-27 15:14:02
【问题描述】:

我收到编译器错误:在这行代码中未声明“NSTableViewAnimationSlideLeft”(在此函数中首次使用):

[searchTableView removeRowsAtIndexes:[[searchTableView selectedRowIndexes] withAnimation:NSTableViewAnimationSlideLeft]];

但最奇怪的是,我在互联网上找不到任何示例。 (谷歌只有 5 个结果)。这种方法有什么问题?

谢谢

【问题讨论】:

标签: objective-c cocoa


【解决方案1】:
[searchTableView removeRowsAtIndexes:[[searchTableView selectedRowIndexes] withAnimation:NSTableViewAnimationSlideLeft]];

你的括号嵌套错误:

  • [searchTableView removeRowsAtIndexes:
    • [
      • [searchTableView selectedRowIndexes]
    • withAnimation:NSTableViewAnimationSlideLeft]
  • ];

这在语法上是合法的,但我不认为您的意思是向索引集发送 withAnimation: 消息,也不是将该消息的返回值(如果有的话)作为索引集传递给 removeRowsAtIndexes: .

我收到编译器错误:“NSTableViewAnimationSlideLeft”未声明(在此函数中首次使用)

它是在 10.7 中引入的,因此请确保您使用的是 10.7 SDK。

如果您支持 10.5 或 10.6,请不要忘记将此代码设置为有条件的。

【讨论】:

  • 如何在 10.5 和 10.6 中删除一行?
  • @Patrick:向表格视图发送reloadData 消息。 (noteNumberOfRowsChanged 可能有效,但根据文档中的描述,我不会指望它。)表格视图将询问数据源或绑定数组发生了什么变化。
猜你喜欢
  • 2012-05-19
  • 2014-04-22
  • 2012-05-07
  • 2012-07-13
  • 2013-05-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多