Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

iOS 8.3: UIActivityViewController shows extraneous row

I have a UIActivityViewController for which I have excluded (using excludedActivityTypes) all the UIActivityCategoryAction activity types.

In iOS 8.2, the UIActivityViewController would only show one line, for the UIActivityCategoryShare activity types.

In iOS 8.3, I get an empty line for UIActivityCategoryAction. See the screenshot below where the second line just has "More".

How can I remove the UIActivityCategoryAction in a UIActivityViewController in iOS 8.3?

enter image description here

like image 642
Randomblue Avatar asked Apr 16 '15 11:04

Randomblue


2 Answers

This is by-design so that users can add back system and third-party actions that they've hidden.

like image 44
Tim Johnsen Avatar answered Sep 19 '22 16:09

Tim Johnsen


In iOS 8, UIActivityViewController is still an API that only provides custom functions, but not custom UI. You can't change the way it looks. The only part of the visual style you can change is the icon of your custom UIActivity subclasses. (ref)

This is how Apple implements this, and it cannot be changed as of 8.3. If you really want to avoid the extra row and the "More" button, you can implement a UIActivityViewController replacement. Here are a couple that have been recently maintained:


OvershareKit

OvershareKit


URBNShareKit

URBNShareKit


References:

  • UIActivityViewController Hide More from Actions
  • UIActivityViewController on iOS 8 show "more" button with custom activities
  • Can I exclude "More" Button in UIActivityViewController?
  • http://getnotebox.com/developer/uiactivityviewcontroller-ios-8/
like image 106
Drakes Avatar answered Sep 22 '22 16:09

Drakes