这是我的项目:https://github.com/a8b/musicManager/tree/master/musicManager
我在 MusicCollection.m 中遇到 addSongToLibrary 方法的问题 - 它不会添加带有 [library addSong:song] 的歌曲
答案 0 :(得分:1)
为了清晰起见,为了简化代码,请执行以下操作:
-(void) addSongToLibrary:(Song *)song {
for (Song *song in library.songs) {
NSLog(@"%@", song);
}
[library addSong:song];
}
}
您正在声明一个与方法参数同名的变量,因此它隐藏了传入的值。
答案 1 :(得分:0)
嗯,你注释掉了以下代码
/*-(instancetype) init {
self = [super init];
if (self) {
library.songs = [NSMutableArray array];
[library addSong:[Song new]];
}
return self;
}*/
所以库永远不会发生,你要么取消注释,要么在viewDidLoad
中你需要添加library.songs = [NSMutableArray array];
,否则它将是零。