如何在不使用弃用方法的情况下更改NSTableView的选择

时间:2010-10-25 17:25:24

标签: cocoa nstableview

我有Apress“学习可可”一书(2010年BTW出版),我在其中一行上得到了弃用错误。代码是:

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
    self.villain = [[NSMutableDictionary alloc] initWithObjectsAndKeys:@"Lex Luthor", kName, @"Smallville", kLastKnownLocation, [NSDate date], kLastSeenDate, @"Superman", kSwornEnemy, @"Revenge", kPrimaryMotivation, [NSArray arrayWithObjects:@"Intellect", @"Leadership", nil], kPowers, @"Superhero Action", kPowerSource, [NSNumber numberWithInt:9], kEvilness, [NSImage imageNamed:@"NSUser"], kMugshot, @"", kNotes, nil];
    self.villains = [NSMutableArray arrayWithObject:self.villain];
    [villainsTableView reloadData];
    [villainsTableView selectRow:0 byExtendingSelection:NO];
    [self updateDetailViews];
}

我在第2行到最后一行收到错误,但我不确切知道该行的意图。

3 个答案:

答案 0 :(得分:3)

弃用方法的替换如下所示:

[villainsTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:0] byExtendingSelection:NO];

答案 1 :(得分:2)

The documentation告诉您该消息的作用以及替换内容。

答案 2 :(得分:0)

在XCode中,您可以将鼠标光标放在您想要了解的符号上方。将鼠标光标放在此符号上方(即NSString)时,按住ALT键并双击。这将打开一个上下文敏感的文档。所有弃用的方法和符号都标记为红色。大多数情况下,新的替代品都记录在旧的替代品旁边。在新的xcode中,将出现一个弹出窗口。通过单击框边框处的“笔记本”图标打开文档。

即。对于NSString你会发现:
- initWithCString:iOS 2.0中不推荐使用 + stringWithCString:encoding:

通过有根据的猜测,您将选择“+ stringWithCString:encoding:” Apple几乎添加了新功能,这是旧功能的逻辑增强,因此您不需要谷歌,但请注意相关文档的方法摘要。

相关问题