gpt4 book ai didi

iphone - 如何使用 UIActivityViewController 共享位置?

转载 作者:行者123 更新时间:2023-12-03 18:46:24 26 4
gpt4 key购买 nike

UIActivityViewController 是共享图像和文本的好方法。我怎样才能共享位置?为了共享图像和文本,我将相应的对象添加到 NSArray 中,然后将其作为 UIActivities 传递。我只想添加 CLLocationCooperative2D,但那是一个结构,而不是一个对象。

有什么想法吗?

最佳答案

我遇到了同样的问题,但找不到通过 UIActivityViewController 获取坐标的答案。

作为一种解决方法,我使用了与 WhatsApp 中使用的类似的方法,您可以在其中获得包含不同 map 提供商的操作表。以下代码将显示警报,并让您选择通过 Waze/Google map /Apple map 打开特定位置 - 仅显示已安装的应用程序。只需将“经度”和“纬度”值替换为 CLLocationCooperative2D 纬度/经度属性即可。

UIAlertController* alert = [UIAlertController alertControllerWithTitle:nil message:nil preferredStyle:UIAlertControllerStyleActionSheet];

UIAlertAction* appleMaps = [UIAlertAction actionWithTitle:@"Open in Maps" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://maps.apple.com/?q=%@,%@", latitude, longitude]]];
}];
UIAlertAction* googleMaps = [UIAlertAction actionWithTitle:@"Open in Google Maps" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"comgooglemaps://?q=%@,%@", latitude, longitude]]];
}];
UIAlertAction* waze = [UIAlertAction actionWithTitle:@"Open in Waze" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"waze://?ll=%@,%@", latitude, longitude]]];
}];

[alert addAction:appleMaps];
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"comgooglemaps://"]])
[alert addAction:googleMaps];
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"waze://"]])
[alert addAction:waze];


UIAlertAction* cancel = [UIAlertAction actionWithTitle:@"cancel" style:UIAlertActionStyleCancel handler:nil];

[alert addAction:cancel];

[self presentViewController:alert animated:YES completion:nil];

关于iphone - 如何使用 UIActivityViewController 共享位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14411177/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com