私のクライアントアプリケーションでは、私はアイドルタイムアウト制御メカニズムを持っています。ログイン画面に戻ります。このコントロールはコンテナビューで行われ、他のすべてのビューが開始されます。アイドル時間が経過すると、このコンテナビューを呼び出し元、つまりログイン画面にポップします。UIActionSheetsとUIPopoverControllerを解雇する方法
問題は、ユーザーがアクションシートまたはポップオーバーを表示し、アイドル時間がなくなるまで何もしないと、ログイン画面にスローしたときにアクションシートとポップオーバーが残ります私はそれらを却下しないので、ログイン画面で。
これを解決するには、すべてのアクションシートとポップオーバーを自分のView Controllerのメンバにして、所有者のviewWillDisappearメソッドでそれらを破棄することが考えられます。しかし、私は非常に多くのビューコントローラを持っているので、もしあれば、私は他の方法を探しています。
質問:どのようにこれらのアクションシートとポップオーバーを自分の発信者が誰なのかわからずにログイン画面から外すことができますか?
さらに重要なことに、「誰」が誰であるかを知る必要があります。そのような場合には、表示するためのメカニズムを集中化する必要があります。 – bshirley
ええ、確かに。だから私はそれらをプレゼンターのメンバー変数に変える予定です。それらをすべてグローバルな配列に追加し、それらを却下しても配列からそれらを削除するような仕組みを実装することは良い考えですか? – aslisabanci
これは実現可能な解決策であると思われます。また、一度に1つのポップオーバーを画面に表示するのが最も良い方法です(今でも問題がある場合) – bshirley