質問: textEdit; [viewController.view addSubview:textEdit]; //Show the keyboard [textEdit becomeFirstResponder]; } ``` 私のView Controllerの1つでは、以下を呼び出します。 ``` [MyTextView showInViewController:self] ``` これは `becomeFirstResponder` に `warning:以前に選択したフレームを復元できません。`でクラッシュします。いくつかのサイクルのためにいくつかのスタック関連のクラッシュのように見えます。私はARCにはかなり新しいです。 `UITextView` のデリゲートプロパティは `assign` として定義されています(ARCでは `weak` と解釈してはいけません)。私はこのアプローチがむしろ奇妙な記憶であることを知っています。しかし、ARCがそのようなことを処理できるかどうかを知りたかったのです。明らかにそれはできません。どのようなアイデアが問題であり、どのように解決するのか?
回答: 私はそれがARCとメモリ管理とは関係ないと思うが、 `UITextView` がそれ自身の代理人になれないという根本的な問題である。それはループでロックされます。ロギングメッセージを `textViewDidChangeSelection` に置くと、繰り返し呼び出されることがわかります。メモリの問題ではなく、methinksではなく、 `UITextView` デリゲートの論理的な問題です。問題のある `showInViewController` ではなく、標準の `UITextView` サブクラスを作成し、そのデリゲートを自分自身に設定しようとしても、同じ好奇心を抱いた動作が見られます。