4
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

posted at

UIActivityViewControllerでリマインダーやメモを非表示にする方法

アプリでUIActivityViewControllerを使ったシェアボタン作ってて、リマインダーとメモを非表示にしようとしてハマったのでメモ。

UIActivityViewControllerではexcludedActivityTypesに不要なUIActivityTypeを指定してあげればいいんですが、 マニュアル見てもメモとリマインダーのUIActivityTypeがみつからない!

いろいろ調べてみるとどうやら、UIActivityType(rawValue:String)で解決できる模様。

こんな感じ。

let activityController = UIActivityViewController(activityItems: activityItems, applicationActivities: nil)

// AirDropとリマインダーとメモいらねーです
activityController.excludedActivityTypes = [
            UIActivityType(rawValue: "com.apple.reminders.RemindersEditorExtension"),
            UIActivityType(rawValue: "com.apple.mobilenotes.SharingExtension"),
            UIActivityType.airDrop,]

なんで用意されてないのかよくわかんないけど、解決できて良かった。

参考
http://stackoverflow.com/questions/31792506/how-to-exclude-notes-and-reminders-apps-from-the-uiactivityviewcontroller/32719521#32719521

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
4
Help us understand the problem. What are the problem?