2
私はUIActivityViewControllerを使用しています。ユーザーが自分のアプリケーションをiPhoneのバックグラウンドに送信すると(ホームボタンを押したときなど)、私は生成されたUIActivityViewControllerおよびそれから来た可能性のある子を削除する必要があります。つまり、ユーザーがUIActivityViewControllerで "Mail"または "Message"オプションを選択した場合、このアクションの結果として生成されたビュー(ビューコントローラ?)を削除する必要があります。UIActivityViewControllerの生成された子ビューを閉じます
私は、元のUIActivityViewControllerのみを削除し、それが生成した追加のビューは削除しないことで、次のコードを試しました。
[_myActivityController dismissViewControllerAnimated:NO completion:nil];
これは機能します。私はこれが私のルートビューコントローラを削除しなかったことに驚いた。私は、ルートコントローラがUIActivityViewControllerまたはpresentViewControllerプロパティを介してその子を指していると思います。これは、その要素を削除する方法です。いずれにせよ良いもの。 –
注:ユーザーがUIActivityViewControllerで[more]をクリックすると、このソリューションですべての要素が削除されるわけではありません。すべての要素を適切に削除するには 'mytopController = mytopController.presentedViewController;を削除し、' [mytopController dismissViewControllerAnimated:NO completion:nil];を '[mytopController.presentedViewController dismissViewControllerAnimated:NO completion:nil];に置き換えます。 –