【问题标题】:Handling custom selection style in view based NSTableView在基于视图的 NSTableView 中处理自定义选择样式
【发布时间】:2011-12-18 10:33:04
【问题描述】:

如何为基于NSTableView 的视图绘制我自己的自定义选择样式?我尝试在我的NSTableCellView 子类中放置一个BOOL var,如果单击它,则将其设置为YES,然后我可以成功绘制我的自定义选择。但是,当单击另一个视图时,如何将 BOOL var 更改为 NO?感谢您的帮助。

编辑:在阅读完 NSTableView 文档后,看起来我需要继承 NSTableRowView 来覆盖选择图,但是我该如何处理我的 NSTableRowView 子类呢?如何让表使用它?

【问题讨论】:

    标签: objective-c macos cocoa user-interface nstableview


    【解决方案1】:

    为了清楚起见,我认为我们应该给出委托方法的代码:

    - (NSTableRowView *)tableView:(NSTableView *)tableView rowViewForRow:(NSInteger)row
    {
       MyNSTableRowView *rowView = [[MyNSTableRowView alloc]init];
       return rowView;
    }
    

    【讨论】:

      【解决方案2】:

      好吧,我想通了。你只需要继承NSTableRowView。它具有为选定和取消选定的行绘制背景的方法。要让表视图使用您的子类,只需实现表视图委托方法tableView:rowViewForRow: 并返回您的子类的一个实例。

      【讨论】:

      • 如何更改单元格视图中的标签颜色和图标?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-10
      • 1970-01-01
      • 2010-12-17
      • 2014-02-07
      • 2012-03-16
      • 1970-01-01
      相关资源
      最近更新 更多