iOS 8.3: UIActivityViewController affiche une ligne externe

J’ai un UIActivityViewController pour lequel j’ai exclu (en utilisant UIActivityCategoryAction ) tous les types d’activité UIActivityCategoryAction .

Dans iOS 8.2, UIActivityViewController qu’une seule ligne pour les types d’activité UIActivityCategoryShare .

Dans iOS 8.3, j’obtiens une ligne vide pour UIActivityCategoryAction . Voir la capture d’écran ci-dessous où la deuxième ligne a juste “Plus”.

Comment puis-je supprimer UIActivityCategoryAction dans un UIActivityViewController dans iOS 8.3?

entrer la description de l'image ici

    Dans iOS 8, UIActivityViewController est toujours une API qui ne fournit que des fonctions personnalisées, mais pas une interface utilisateur personnalisée. Vous ne pouvez pas changer la façon dont il a l’air. La seule partie du style visuel que vous pouvez modifier est l’icône de vos sous-classes UIActivity personnalisées. ( ref )

    Voici comment Apple implémente cela, et il ne peut pas être modifié à partir de 8.3. Si vous voulez vraiment éviter la ligne supplémentaire et le bouton “Plus”, vous pouvez implémenter un remplacement UIActivityViewController. Voici un couple qui a été récemment maintenu:


    OvershareKit

    OvershareKit


    URBNShareKit

    URBNShareKit


    Les références:

    Il s’agit d’une conception indirecte pour que les utilisateurs puissent append des actions système et tierces qu’ils ont masquées.

    The More est la valeur par défaut du système. qui est utilisé pour réorganiser l’application. et pour l’extension (introduite dans IOS 8), le bouton Plus est utilisé pour réorganiser l’application et append une application en dialog. nous n’avons aucun contrôle sur cela.

    J’espère que cela vous aidera.

    UIActivityCategoryAction est la deuxième section d’un UIColletionView, modifiez le nombre de section égal à 1 et l’action UIActivityCategoryAction disparaîtra.

    Voici la démo