2012-01-11 5 views
0

私は、iOS 4.3以上でautomatic reference countingを使用しているアプリを作成しています。私はAVPlayerを使用して再生され、与えられたCMTimeに達するとこのビデオを一時停止できるようにしたいと思うビデオを持っています。私は現在addBoundaryTimeObserverForTimesを使用しており、blockの中のAVPlayerを一時停止しています。それは動作しますが、私はエラーが表示されます。特定のCMTimeでAVPlayerを一時停止する

Capturing 'self' strongly in this block is likely to lead to a retain cycle 

は私のコード:

timeObserver = [player addBoundaryTimeObserverForTimes:endTime //An array of one NSValue representing a CMTime 
               queue:NULL 
              usingBlock:^{ 
                  [player pause]; 
                 }]; 

私はこれを行うための正しい方法を考え出すことはできませんし、任意の助けのために非常に感謝されます。

ありがとうございました!

答えて

0

__weakストレージデコレータを使用する必要があります。

__weak MYClass* blockSelf = self; 

をして、ブロック内での自己の代わりにblockSelfを使用する:あなたのブロックコードの前にこれを置きます。 https://stackoverflow.com/a/7854315/100848

+0

ありがとうweichsel:

更新
はちょうどここにSO上でこの素晴らしい答えを見つけました。あなたの答えが私の場合にうまくいくかどうかわかりません... iOS 4.3で__weakを使うことはできますか?とにかくあなたが提供したリンクで覆われているので、ありがとう! – Simple99

関連する問題