Wymieniona w drugiej odpowiedzi UIActivityViewController czyni to banalnie. Wszystko, co musisz zrobić, to określić tekst/obraz/adres URL, który chcesz udostępnić i zaprezentować kontroler widoku aktywności, a system iOS automatycznie wyświetli wszystkie odpowiednie usługi udostępniania. Przykłady:
Cel C
- (void)shareText:(NSString *)text andImage:(UIImage *)image andUrl:(URL *)url
{
NSMutableArray *sharingItems = [NSMutableArray new];
if (text) {
[sharingItems addObject:text];
}
if (image) {
[sharingItems addObject:image];
}
if (url) {
[sharingItems addObject:url];
}
UIActivityViewController *activityController = [[UIActivityViewController alloc] initWithActivityItems:sharingItems applicationActivities:nil];
[self presentViewController:activityController animated:YES completion:nil];
}
Swift
func share(sharingText: String?, sharingImage: UIImage?, sharingURL: URL?) {
let sharingItems:[AnyObject?] = [
sharingText as AnyObject,
sharingImage as AnyObject,
sharingURL as AnyObject
]
let activityViewController = UIActivityViewController(activityItems: sharingItems.flatMap({$0}), applicationActivities: nil)
if UIDevice.current.userInterfaceIdiom == .pad {
activityViewController.popoverPresentationController?.sourceView = view
}
present(activityViewController, animated: true, completion: nil)
}
Chcę otworzyć arkusz akcji z niestandardową ikoną, jak wechat, weibo, qq i zintegrować z nią funkcjonalność, w jaki sposób mogę to zrobić? – RaviJSS
Sprawdź również ten link również .. http://stackoverflow.com/a/35267035/3908884 –
[Oto podstawowy przykład korzystania z Swift] (http://stackoverflow.com/a/35931947) – Suragch