1

iOSでは、「プロトコル」はそれです

        id foo = [[SomeClass alloc] init]
        [foo release]

リリースによって解放されるように、retainCount が 1 のオブジェクト「foo」を作成する必要があります。

以下の iOS5 のコードでは、retainCount が 3 になります。

TWTweetComposeViewController *twController = [[TWTweetComposeViewController alloc] init];
log_trace(@"twController (after construction) retain count %d", [twController   retainCount]);

問題は、アプリに発行されたメモリ警告中にクラッシュすることです

*** Terminating app due to uncaught exception 'NSRangeException', reason: 'Cannot remove an observer <TWTweetComposeViewController 0x82a3980> for the key path "contentSize" from <UITextView 0x13f2e760> because it is not registered as an observer.'

iOS6 ベータ 1 ビルドを確認したところ、この動作は修正されています (クラッシュも同様です)。

これは質問につながります: iOS5.1 で何とかこれを回避する方法はありますか?

4

0 に答える 0