在iOS7 iPad 1x/2x模式上,仅限Facebook&;UIActivityViewController中缺少Twitter图标? 我的应用程序仅适用于iPhone,当我在iPad上以1x和2x模式运行相同的应用程序时,UIActivityViewController不会显示facebook和twitter图标,邮件图标也不正确。尽管功能正常工作 根据配置,已在设置中配置了相应的帐户
这个问题只发生在iPad上,但在iPhone上可以正常工作在iOS7 iPad 1x/2x模式上,仅限Facebook&;UIActivityViewController中缺少Twitter图标? 我的应用程序仅适用于iPhone,当我在iPad上以1x和2x模式运行相同的应用程序时,UIActivityViewController不会显示facebook和twitter图标,邮件图标也不正确。尽管功能正常工作 根据配置,已在设置中配置了相应的帐户,ios,iphone,facebook,ipad,Ios,Iphone,Facebook,Ipad,这个问题只发生在iPad上,但在iPhone上可以正常工作 - (void)onShare:(id)sender { UIActivityViewController *activityView = [[UIActivityViewController alloc] initWithActivityItems:@[@"World Cup! 2015",[UIImage imageNamed:@"WC15"]] applicationActivities:nil] ; [activityVie
- (void)onShare:(id)sender {
UIActivityViewController *activityView = [[UIActivityViewController alloc] initWithActivityItems:@[@"World Cup! 2015",[UIImage imageNamed:@"WC15"]] applicationActivities:nil] ;
[activityView setExcludedActivityTypes:[NSArray arrayWithObjects:
UIActivityTypePostToWeibo, UIActivityTypeCopyToPasteboard, UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll, UIActivityTypeAddToReadingList, UIActivityTypePostToFlickr, UIActivityTypePostToVimeo, UIActivityTypePostToTencentWeibo, UIActivityTypeAirDrop, UIActivityTypePrint,nil]];
[self presentViewController:activityView animated:YES completion:nil];
}
仅缺少Facebook和Twitter图标
这是一个截图
原因是我们需要使用适用于iPad的UIPopOverViewController和适用于iPhone的UIActivityViewController 有关详细说明,请查看此问题: 以下是解决此问题需要使用的代码:
UIActivityViewController *controller = [[UIActivityViewController alloc] initWithActivityItems:[NSArray arrayWithObject:@"Test",nil] applicationActivities:nil];
//if iPhone
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
[self presentViewController:controller animated:YES completion:nil];
}
//if iPad
else {
// Change Rect to position Popover
UIPopoverController *popup = [[UIPopoverController alloc] initWithContentViewController:controller];
[popup presentPopoverFromRect:CGRectMake(self.view.frame.size.width/2, self.view.frame.size.height/4, 0, 0)inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
}
注意:-iPhone上没有UIPopoverController。文档中写道:“Popover控制器仅用于iPad设备。尝试在其他设备上创建一个控制器会导致异常(如果您的应用程序仅为iPhone,则会出现此异常)。”
参考链接:-
也许这对你有帮助
感谢作为上述问题的解决方案,我刚刚创建了定制的
UIView
,带有所需的动画和每个不同实现的项目。我探索的唯一解决方案。谢谢您的回复。但是,我只有iPhone应用程序,如果你在iPad上看到iPhone应用程序的UI呈现,那么if(UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPhone)在iPad上也不符合这个条件(如果你想试试)。这不是正确的答案。我已更改为自定义UIView,带有类似UIActivityController的动画,因为共享活动项是恒定的。