0
- (void)showMusicPlayer
{
[MediaPlayController releaseInstance];
MusicPlayController *musicPlayController = [[MusicPlayController alloc] init];
MusicPlayerViewController *musicPlayerViewController = [musicPlayController createMusicPlayerViewController];

HomeRunManagerAppDelegate *delegate = [[UIApplication sharedApplication] delegate];
[delegate showFullScreenView:musicPlayerViewController];
}

メソッドは、保持カウントが +1 の object-c オブジェクトを返します。

musicPlayController インスタンスを割り当てて、音楽を再生しているように見えますが、リークがあるだけです。警告 (またはメモリ リーク) を解決する方法がわかりません。オブジェクトをどこで解放すればよいですか?

おもう、

MusicPlayController *musicPlayController = [[[MusicPlayController alloc] init] autorelease]; 

有用な方法ではありません。

私を助けてくれてありがとう。

4

1 に答える 1

0

はい、リリースする必要がありますmusicPlayController

どちらかによって

MusicPlayController *musicPlayController = [[[MusicPlayController alloc] init] autorelease]; 

または

 MusicPlayController *musicPlayController = [[MusicPlayController alloc] init];
MusicPlayerViewController *musicPlayerViewController = [musicPlayController createMusicPlayerViewController];  
[musicPlayController release];
于 2012-05-29T12:59:15.977 に答える