4

カスタム UI (SLComposeServiceViewController を使用しない) を使用して iOS 共有拡張機能を作成しましたが、すべてがうまく機能します。

拡張機能が呼び出されると、共有 URL またはテキストを受け取って送信します。それだけで、うまく機能します。

カスタム UI はシンプルです。送信中であることを示すグラフィックを表示する 1 つのイメージ ビュー。送信が完了すると、「送信済み」と表示されます。その後、これはフェードアウトします。

これが完了した後、拡張機能が消えたように見えますが、ホスト アプリケーションを制御できなくなります。目に見えない窓や景色がすべての上にあるようなものです。(たとえば、Safari のイメージ ローテーターは回転しますが、スクロールしたり、リンクやボタンをタップしたりすることはできません。)

[self.extensionContext completeRequestReturningItems:nil completionHandler:nil];共有が完了したら呼び出します。理解できるように、UI を閉じる必要があります。私も[self.view removeFromSuperview]運なしで試しました。

シミュレーターとデバイスで発生します。足りないものはありますか?

編集: これは、共有をテストするために作成した単純なアプリのビュー階層が、共有前と共有後の Reveal でどのように見えるかです。このアプリには、共有テキストと共有 URL の 2 つのボタンがあり、それぞれ標準の共有シートが表示されます。

http://josh.is/1utYnKS

http://josh.is/1rdVo34

4

1 に答える 1

4

beginRequestWithExtensionContext:わかりました。メソッド内にスーパーへの呼び出しが含まれていないことに気付くのに、なぜ 10 時間もかかったのかわかりません。

他にどのような問題が発生したかはわかりませんが、上記の問題が発生したことは確かです。

于 2014-10-06T22:41:59.670 に答える