是否有服务可以在应用程序中将URL添加到iOS Safari的阅读列表中.
我会有一个url添加和UIWebView,但我已经研究,我找不到任何东西.
这是我工作的UIActivityViewController.
-(IBAction)actionButton:(id)sender;{
NSLog(@"shareButton pressed");
NSURL *URL = [NSURL URLWithString:self.feedItem[@"url"]];//this is your text string
NSArray *activityItems = @[URL];
ARChromeActivity *chromeActivity = [[ARChromeActivity alloc] init];
TUSafariActivity *TUSafari = [[TUSafariActivity alloc] init];
MLCruxActivity *cruxActivity = [[MLCruxActivity alloc] init];
NSArray *applicationActivities = [NSArray arrayWithObjects:TUSafari,chromeActivity,cruxActivity, nil];
UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities: applicationActivities];
activityVC = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:applicationActivities];
activityVC.excludedActivityTypes = @[UIActivityTypeAssignToContact];
[self presentViewController:activityVC animated:TRUE completion:nil];
}
Run Code Online (Sandbox Code Playgroud) 我一直在尝试使用新的UIActivityViewController来替换我的所有UIActionSheets进行共享,但是我遇到了一个问题.
我有5个活动,消息,电子邮件,复制,推特和Facebook.我已经想出如何在自定义的UIActivityProvider子类中显示不同的文本:
- (id) activityViewController:(UIActivityViewController *)activityViewController
itemForActivityType:(NSString *)activityType
{
if ( [activityType isEqualToString:UIActivityTypePostToTwitter] )
return twitter;
if ( [activityType isEqualToString:UIActivityTypePostToFacebook] )
return facebook;
if ( [activityType isEqualToString:UIActivityTypeMessage] )
return urlScheme;
if ( [activityType isEqualToString:UIActivityTypeMail] )
return urlScheme;
if ( [activityType isEqualToString:UIActivityTypeCopyToPasteboard])
return urlScheme;
return nil;
}
Run Code Online (Sandbox Code Playgroud)
这在我的视图控制器中:
ActivityProvider *aProvider = [[ActivityProvider alloc] init];
aProvider.facebook = facebook;
aProvider.twitter = twitter;
aProvider.urlScheme = URL;
NSArray *Items = @[aProvider, sharedURL];
UIActivityViewController *activityVC = [[UIActivityViewController alloc]initWithActivityItems:Items applicationActivities:Nil];
activityVC.excludedActivityTypes = @[UIActivityTypePrint, UIActivityTypeAssignToContact,UIActivityTypeSaveToCameraRoll, UIActivityTypePostToWeibo];
[self presentViewController:activityVC …Run Code Online (Sandbox Code Playgroud) 我有一个UIActivityViewController在我的iOS 6应用程序中,我正在推动更新,但我还没有使用iOS 7 SDK进行编译.
有没有办法在我UIActivityViewController的iOS7中禁用添加到阅读列表和AirDrop 而无需使用iOS 7 SDK重新编译?
ios ios6 uiactivityviewcontroller ios7 uiactivitytypeairdrop
我知道我可以将文本,URL,图像等内容添加到UIActivityViewController中,但是如何使用我的位置缩略图添加我当前的位置,如下面显示的推文?换句话说,如何在UIActivityViewController中共享坐标"纬度,经度"?
谢谢

我正在使用UIActivityViewController将我的应用程序中的信息共享到Twitter和FB,这些信息已在"设置"中正确配置.代码是最简单的:
- (IBAction)share {
NSString *postText = @"some text";
UIImage *postImage = [UIImage imageNamed:@"myImage"];
NSURL *postURL = [NSURL URLWithString:@"myUrl"];
NSArray *activityItems = @[postText, postImage, postURL];
UIActivityViewController *activityController = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];
activityController.excludedActivityTypes =
@[
UIActivityTypePrint,
UIActivityTypeCopyToPasteboard,
UIActivityTypeAssignToContact,
UIActivityTypeSaveToCameraRoll,
UIActivityTypeCopyToPasteboard,
UIActivityTypeMail,
UIActivityTypeMessage,
UIActivityTypePostToWeibo,
];
[activityController setCompletionHandler:^(NSString *activityType, BOOL completed) {
if ([activityType isEqualToString:UIActivityTypePostToFacebook]) {
if (completed) [self doSomethingForFB];
} else if ([activityType isEqualToString:UIActivityTypePostToTwitter]) {
if (completed) [self doSomethingForTwitter];
}
}];
[self presentViewController:activityController animated:YES completion:nil];
}
Run Code Online (Sandbox Code Playgroud)
这段代码就像模拟器上的魅力(iphone和ipad,ios7和ios6),但在我的设备(带iOS7的iPad)上,当ActivityViewController出现时,Twitter和FB就在那里,因为标签是可见的,但是他们的图标不见了.
我正在使用Google的Gmail Share Extension.我提供的实施:
- (id)activityViewController:(UIActivityViewController *)activityViewController itemForActivityType:(NSString *)activityType;
- (id)activityViewControllerPlaceholderItem:(UIActivityViewController *)activityViewController;
- (NSString *)activityViewController:(UIActivityViewController *)activityViewController subjectForActivityType:(NSString *)activityType;
Run Code Online (Sandbox Code Playgroud)
对于Mail客户端(来自Apple),它将进入下面的委托方法,但Gmail
- (NSString *)activityViewController:(UIActivityViewController *)activityViewController subjectForActivityType:(NSString *)activityType;
Run Code Online (Sandbox Code Playgroud)
相反,它显示主题与正文相同.我想知道如何为Gmail共享选项设置与正文文本不同的主题.
当我Whatsapp使用UIActivityViewController我正在收到警报时,我正在向app 分享图像数据:
此项目无法共享.请选择其他项目.
我能够将图像数据共享给所有其他应用程序,除了Whatsapp,是否有人遇到过这样的问题?或者任何人都可以帮我解决这个问题.
如果有人想检查代码,那么如果需要,评论将分享.
我使用以下代码分享一些内容
var textToShare = "Test"
let activityVC = UIActivityViewController(activityItems: [textToShare], applicationActivities: nil)
activityVC.excludedActivityTypes = [UIActivityTypePrint, UIActivityTypeCopyToPasteboard, UIActivityTypeAssignToContact]
presentViewController(activityVC, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)
但是,当我按下取消按钮或成功共享内容时,应用程序显示一个空白屏幕.
如何解决这个问题?
更新:
当我为共享目标选择邮件或短信应用程序时,就会出现空白屏幕,对于电报,Twitter和Facebook,它是完美的.
我评论了生命周期方法中的所有代码,仍然是同样的问题.
override func viewDidAppear(animated: Bool)
{
//setControlsAreHidden(true)
}
override func viewWillAppear(animated: Bool)
{
//if dataAddedToView
//{
// activityIndicator?.removeFromSuperview()
//}
}
override func viewWillDisappear(animated: Bool)
{
//setControlsAreHidden(false)
}
Run Code Online (Sandbox Code Playgroud) 我无法理解UIActivityViewController调用后如何执行操作.例如,当我使用以下代码保存图像时:
let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
let activity = UIActivityViewController(activityItems: [image], applicationActivities: nil)
presentViewController(activity, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)
用户收到新窗口,可以在某处保存图像.成功保存图像后,我想执行一些操作(例如跳转到根视图控制器).但我无法弄清楚如何追踪这UIActivityViewController是关闭的.如果我在这个块之后编写代码,没有任何反应,正如我所理解的那样,因为这个代码是在活动VC中实现的,而不是在原始VC中实现的.
我认为这viewWillDisappear对我有帮助,但是它跟踪了原来的VC,我称之为活动VC,我无法弄清楚如何跟踪活动VC.与此同时,即使我有能力追踪此事件,仍然存在一个问题:除了取消之外,我怎么能有所不同?
在 UIActivityViewController 中,选项按钮从何而来?例如,Safari 呈现活动视图的方式如下:
旁边apple.com有一个“选项”按钮,可让用户选择发送数据的格式。如何让该按钮出现在我的应用程序中?