una reproduccion listas lista hacer crear compartir compartidas como colaborativa carpetas apple agregar ios cocoa-touch ios7 uikit share

ios - reproduccion - listas compartidas apple music



¿Cómo creo un botón estándar de compartir de iOS? (7)

Las pautas de interfaz humana de iOS dicen :

Utilice el botón Compartir provisto por el sistema. Los usuarios están familiarizados con el significado y el comportamiento de este botón, por lo que es una buena idea usarlo cuando sea posible. La excepción principal a esto es si su aplicación no contiene una barra de herramientas o una barra de navegación [, ya que] el botón Compartir solo se puede usar en una barra de herramientas o barra de navegación.

OK, pero ¿cómo "uso el botón Share proporcionado por el sistema"? Una búsqueda de la documentación resulta nada útil.

He llegado a la conclusión de que debería usar UIActivityViewController en mi respuesta al botón que se está pulsando , pero ¿cómo crearía el botón Compartir estándar en primer lugar?


Aquí está el código para Swift 3.

func addShareBarButtonItem() { let shareButton = UIBarButtonItem(barButtonSystemItem: .Action, target: self, action: #selector(MyViewController.shareButtonPressed)) self.navigationItem.rightBarButtonItem = shareButton } func shareButtonPressed() { //Do something now! }


Aquí está el código. Asumo que estás dentro de ViewController, así que yo tengo la propiedad navigationItem.

UIBarButtonItem *shareButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:@selector(shareAction:)]; self.navigationItem.rightBarButtonItem = shareButton;


El botón Compartir estándar es un UIBarButtonItem (por lo que solo puede ir en una barra de navegación o barra de herramientas). Necesita crear un "elemento del sistema" ; específicamente, un "elemento de acción" . El elemento del botón de la barra de "acción" es el botón Compartir.


El botón de acción provisto por el sistema también se puede crear completamente con un constructor de interfaz. Para hacerlo, simplemente arrastre y suelte la barra de herramientas de la UIT en su vista. Luego arrastre y suelte UIBarButtonItem en la barra de UIToolbar. Como paso siguiente, seleccione en la jerarquía de vistas el UIBarButtonItem , vaya al inspector de atributos y seleccione como elemento del sistema la "Acción". ¡Hecho!

Además, es posible conectar el UIBarButtonItem con su clase como IBOutlet o IBAction.

Tenga en cuenta: yo uso como referencia un Xcode 7.


Esto va en su viewDidLoad:

UIBarButtonItem *shareButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:@selector(compartir:)]; self.navigationItem.rightBarButtonItem = shareButton;

Y defina su método de selector para que se llame como acción (en mi caso denominado "compartir"):

- (void) compartir:(id)sender{ //Si no NSLog(@"shareButton pressed"); NSString *stringtoshare= @"This is a string to share"; UIImage *imagetoshare = img; //This is an image to share. NSArray *activityItems = @[stringtoshare, imagetoshare]; UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil]; activityVC.excludedActivityTypes = @[UIActivityTypeAssignToContact, UIActivityTypePrint, UIActivityTypePostToTwitter, UIActivityTypePostToWeibo]; [self presentViewController:activityVC animated:YES completion:nil]; }


Main.storyboard -> Bar Button Item -> Inspector -> System Item eligió "Action"


solo mis dos centavos para swift 4 / Xcode 10:

1) la acción ha cambiado char inicial:

let shareButton = UIBarButtonItem(barButtonSystemItem: .action, target: self, action: #selector(shareButtonPressed))

2) agregar @obj:

@objc func shareButtonPressed() { //Do something now! }