私はUIViewControllerを持っています。その中で、ユーザーは UIActionsheet または popover を起動できます。デバイスが回転すると、UIViewController が意図的に解放されます。問題は、UIActionsheet / ポップオーバーが存続し、後で私を悩ませるゾンビになることです。ユーザーがゾンビのボタンをクリックすると、アプリケーションがクラッシュする可能性があります。dealloc または shouldAutorotateToInterfaceOrientation で [actionsheet disconnectWithClickedButtonIndex:0 animation:NO] を呼び出そうとしました。無効。提案をお待ちしております。ありがとう。
1 に答える
0
この投稿から解決策を見つけました: [アクションシートを閉じる][1]
[1]:子ビュー コントローラーから表示された UIActionSheet で iPad がクラッシュする。UIViewController ビューのサブビューを検索するか、viewWithTag メソッドを呼び出してアクションシートを呼び出そうとしましたが、間違いがありました。奇妙なことに、nil 以外のオブジェクトが返されました。ただし、このオブジェクトを使用して、dismissWithClickedButtonIndex を呼び出すことはできません。
投稿の作成者は、UIActionSheet ポインターを使用し、viewWillDisapper でアクションシートを閉じることを提案しています。上記の特定のアプリケーションでは、dealloc でアクションシートを削除した方がうまくいくことがわかりました。
于 2011-12-08T19:57:45.427 に答える