出于什么原因我的xcode已经决定它不喜欢我......我收到了这一行标题中所述的错误
- (void)tableViewSelectionDidChange:(NSNotification *)notification
{
NSInteger row = [_tableView selectedRow];
if (row == –1) //<---- this line
{
return;
}
NSString *selectedVoice = [_voices objectAtIndex:row];
[_speechSynth setVoice:selectedVoice];
NSLog(@"new voice = %@", selectedVoice);
}
我确实认为它与_tableView混淆有关,因为当我试图让IDE帮助我输入时(你知道什么时候通过执行API查找来猜测你可能会做什么来完成你的话可用功能)它不会将selectedRow显示为可能:(
因为我需要将.m和.h放在pastebin中以节省屏幕上的空间......仅供参考我正在关注Mac OSX第四版Coca编程第6.10节
答案 0 :(得分:4)
在你的行
if (row == –1)
减号不是真正的减号,而是&#34; EN DASH&#34; (Unicode U + 2013)。也许您在键入该代码时意外地将选项键与减号键一起按下。
用减号代替该字符可以解决问题。
答案 1 :(得分:0)
UITableView没有名为selectedRow的方法。
也许你应该使用:
- (NSIndexPath *)indexPathForSelectedRow