león de montaña ofrece un botón incorporado compartir que revela un menú de servicios de intercambio apropiado para la aplicación:¿Cómo mostrar el botón compartir en Mountain Lion?
¿Cómo puedo insertar en mi aplicación?
león de montaña ofrece un botón incorporado compartir que revela un menú de servicios de intercambio apropiado para la aplicación:¿Cómo mostrar el botón compartir en Mountain Lion?
¿Cómo puedo insertar en mi aplicación?
Para añadir el botón de compartir en Mountain Lion:
1) Añadir un NSButton
llamados, por ejemplo, shareButton
.
2) añadir la imagen estándar para este botón:
3) En la "acción de clic", presentará el NSSharingServicePicker
:
NSSharingServicePicker *sharingServicePicker = [[NSSharingServicePicker alloc] initWithItems:urls];
sharingServicePicker.delegate = self;
[sharingServicePicker showRelativeToRect:[sender bounds]
ofView:sender
preferredEdge:NSMinYEdge];
4) Finalmente, implemente los métodos NSSharingServicePickerDelegate
para personalizar los servicios disponibles del selector.
Tenga en cuenta que si usted está tratando de añadir este botón a través de Interface Builder:
No me parece correcto en XCode, pero funciona bien cuando se ejecuta.
PS: parece ser un caso en el que you need to use the System Icon string value (NSShareTemplate) en lugar de la constante (NSImageNameShareTemplate).
En Swift, he utilizado esto:
extension NSSharingService {
class func shareContent (content: [AnyObject], button: NSButton) {
let sharingServicePicker = NSSharingServicePicker (items: content)
sharingServicePicker.showRelativeToRect(button.bounds, ofView: button, preferredEdge: NSRectEdge.MaxY)
}
}
cómo usarlo? – user1374
no recomienda el uso del IB para establecer la imagen. Simplemente funciona al configurarlo a través de código. Además, también debería agregar la siguiente línea después: "[shareButton sendActionOn: NSLeftMouseDownMask];" – Arvin