Ank*_*ain 24 iphone gmail uiactivityindicatorview ipad ios
我使用UIActivityViewController来显示共享.在我选择邮件应用程序的列表中,主题和正文设置正确,Gmail应用程序中的位置为空.
- (void)shareAVideoWithSubject:(NSString*)subject Link:(NSString *)string onViewController:(UIViewController *)viewController fromView:(UIView *)view {
_activityViewController =
[[UIActivityViewController alloc] initWithActivityItems:@[string]
applicationActivities:nil];
_activityViewController.excludedActivityTypes = @[UIActivityTypePrint, UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll, UIActivityTypeAddToReadingList, UIActivityTypeAirDrop];
[_activityViewController setValue:subject forKey:@"subject"];
UIWindow *window = [[[UIApplication sharedApplication] delegate]window];
//if iPhone
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
{
if(!viewController){
viewController = ((SWRevealViewController*)window.rootViewController).presentedViewController;
}
[viewController presentViewController:_activityViewController
animated:YES
completion:nil];
}
//if iPad
else
{
// Change Rect to position Popover
popup = [[UIPopoverController alloc] initWithContentViewController:_activityViewController];
UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithCustomView:view];
[popup presentPopoverFromBarButtonItem:barButton permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
}
}
Run Code Online (Sandbox Code Playgroud)
我在StackOverFlow上查看了以下两个问题.
这些不是我的问题的答案,因为他们在列表中添加了新的活动,而我希望iOS显示所有可共享的应用程序.在这种情况下,Gmail共享正在变空.
提前致谢.添加截图,
Ser*_*nov 12
[_activityViewController setValue:subject forKey:@"subject"];
是无证的方式来设置电子邮件的主题.
设置正文和主题的正确方法(iOS 7.0及更高版本) - UIActivityItemSource
在要共享的项目上实现协议.
// EmailItemProvider.h
@interface EmailItemProvider : NSObject <UIActivityItemSource>
@property (nonatomic, strong) NSString *subject;
@property (nonatomic, strong) NSString *body;
@end
// EmailItemProvider.m
#import "EmailItemProvider.h"
@implementation EmailItemProvider
- (id)activityViewControllerPlaceholderItem:(UIActivityViewController *)activityViewController {
return _body;
}
- (id)activityViewController:(UIActivityViewController *)activityViewController itemForActivityType:(NSString *)activityType {
return _body;
}
- (NSString *)activityViewController:(UIActivityViewController *)activityViewController subjectForActivityType:(NSString *)activityType {
return _subject;
}
@end
Run Code Online (Sandbox Code Playgroud)
而不是呈现它:
EmailItemProvider *emailItem = [EmailItemProvider new];
emailItem.subject = @"Subject";
emailItem.body = @"Body";
UIActivityViewController *activityViewController =
[[UIActivityViewController alloc] initWithActivityItems:@[emailItem]
applicationActivities:nil];
[self presentViewController:activityViewController animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)
这将在邮件应用程序上设置正文和主题,但似乎Gmail应用程序忽略主题并将其设置为等于正文.
重要提示:似乎Gmail应用中存在错误.传递&
字符使邮件主题和正文变为空.请&
改用.其他特殊字符未经过测试.
归档时间: |
|
查看次数: |
7029 次 |
最近记录: |