我想将NSTableColumn的headerTitle属性绑定到我的模型层中的NSMutableArray(通过NSArrayController)。
基本上我想要一个数组,我可以在其中更改值并更新表列标题标题。那是合理的吗?
但是,the headerTitle
binding需要一个NSString
,我不知道如何通过我的NSArrayController
将我的模型对象连接到此绑定。谷歌没有为这个问题提供很多点击。
我的模型层由两个类组成(两者都符合KVC标准)。第一个是表示单个列标题的模型,它有一个属性title
,
// A model class representing the column title of single NSTableColumn
@interface ColumnTitle : NSObject
@property NSString *title;
+ (ColumnTitle*) columnTitleWithTitle:(NSString*) aString;
@end
第二个模型对象,它表示一组有序的ColumnTitle对象,
// Class representing an order collection of model items
@interface TableColumnTitles : NSObject
@property NSMutableArray* columnTitles; // an array of ColumnTitle objects
// These are the KVC array accessors
-(void) insertObject:(ColumnTitle*)columnTitle inColumnTitlesAtIndex:(NSUInteger)index;
- (void)removeObjectFromColumnTitlesAtIndex:(NSUInteger)index;
- (void)replaceObjectInColumnTitlesAtIndex:(NSUInteger)index withObject:(ColumnTitle*)columnTitle;
@end
请注意,TableColumnTitles
对象实现了绑定所需的上述数组访问器。有什么建议吗?
答案 0 :(得分:1)
Haven之前没有尝试过,但您实际要求的是使用 KVC进行数组索引。一个快速谷歌没有在这个问题上发现任何事情,除了一些结果表明它不可能(检查this)
我能想出的最简单的解决方法是简单地为数组索引添加专用属性..不是很好但是可以完成工作。
因此,对于名为NSMutableArray
的{{1}}并且包含myArray
类型title
属性的对象,您可以执行以下操作:
NSString
总是假设他们的号码事先知道,我们不会说200列: - )
答案 1 :(得分:0)
我认为这可能/可能不是你所追求的,但快速谷歌搜索让我来到这里: http://pinkstone.co.uk/how-to-add-touch-events-to-a-uitableviewfooter-or-header/
编辑:我意识到这是针对mac(而不是ios),但如果实际上有帮助,应该很容易翻译。