9

初めて UIActivityViewController を呼び出すと、インタラクションがロックされます。最初のクリックの後、インタラクションをロックせずに正常になりますが、初めてキャッチしない方法を知っている人はいますか?

4

2 に答える 2

6

多分これが役立つかもしれません。同様の問題がありました.UIActivityViewControllerは初めて表示されるのがかなり遅かったです。

サポートされているアクティビティ タイプから AirDrop を削除して解決したところ (を介してexcludedActivityTypes)、超高速になりました。したがって、AirDrop (私の場合) に興味がない場合は、次のようにすることができます。

if (floor(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_6_1) {
    activityVC.excludedActivityTypes = @[UIActivityTypeAirDrop];
}

UIActivityTypeAirDropiOS 7.0 以降でのみ使用できることに注意してください。

于 2014-04-27T17:51:20.703 に答える
-2

問題がよくわかりません-UIActivityViewControllerを割り当て/初期化してから、それを提示しpresentViewController:animated:completionますよね?を必ず呼び出してくださいpresentViewController..。メインスレッドで。間違ったスレッドで呼び出された UI が実行されるまでに数秒かかることがあります。しかし、それはiOSだけかもしれません -UIActivityViewController利用可能なサービスやものをチェックするのに時間がかかり、それが遅くなっていることもあります.

于 2013-09-13T22:01:42.787 に答える