У меня проблема с функцией UIActivity
.Потерянный предмет после сортировки элемента в виде меню
Во-первых, я создаю 3 пунктов деятельности:
activityDownload
activityTrash
activityMove
.
И добавить к UIActivityViewController
И затем, когда я представить UIActivityViewController
который включает в себя 3 пункта выше. Хорошо, здесь нет проблем. Затем, когда я нажимаю кнопку «Больше» и сортирую элементы, например, я перемещаю кнопку «Переместить» на верх, После нажатия кнопки «Готово» я не знаю, почему были потеряны элементы «Загрузить», «Корзина»? Перемещение элементов отображается только в меню меню AirDrop.
NSURL *url = [self fileToURL:self.documentName];
NSArray *objectsToShare = @[url];
AirDropActivityView *activityDownload = [[AirDropActivityView alloc] init];
activityDownload.airDropType = 0;
AirDropActivityView *activityTrash = [[AirDropActivityView alloc] init];
activityTrash.airDropType = 1;
AirDropActivityView *activityMove = [[AirDropActivityView alloc] init];
activityMove.airDropType = 2;
NSArray *uiActivitys = @[activityDownload,activityTrash,activityMove];
UIActivityViewController *controller = [[UIActivityViewController alloc] initWithActivityItems:objectsToShare applicationActivities:uiActivitys];
// Exclude all activities except AirDrop.
NSArray *excludedActivities = @[UIActivityTypePostToTwitter, UIActivityTypePostToFacebook, UIActivityTypePostToWeibo,UIActivityTypeMessage,UIActivityTypePrint, UIActivityTypeCopyToPasteboard UIActivityTypeAssignToContact,UIActivityTypeSaveToCameraRoll,UIActivityTypeAddToReadingList, UIActivityTypePostToFlickr,UIActivityTypePostToVimeo,UIActivityTypePostToTencentWeibo];
controller.excludedActivityTypes = excludedActivities;
// Present the controller
[self presentViewController:controller animated:YES completion:nil];
https://gist.github.com/tranhieutt/f73999234339f31aa86c
Пожалуйста, смотрите снимок экрана:
Благодарим за помощь. Я только что реализовал. Все нормально. Итак, у меня есть более 8 таких функций, это значит, что я должен создать 8 класс. –
Нет, не нужно. Создайте общий класс и сколько хотите, создайте для него столько, сколько экземпляров. Вам нужно иметь в виду, что 'activityType' каждого экземпляра должен быть другим. –
> activityType каждого экземпляра должен быть другим. Да, я понимаю. Это правильно. Спасибо! –