谢谢
解决方法 我有一个完整的代码示例以及执行此 *** 作的所有重要类/方法.我知道答案很晚,但这有助于将来的某些人:- (voID)shareTab{ PFGeoPoint *geoPoint = self.vIDgeoObject[kParseLocation]; Nsstring *coordinates = [Nsstring stringWithFormat:@"http://maps.apple.com/maps?q=%f,%f",geoPoint.latitude,geoPoint.longitude]; CLLocation *userLocation = [[CLLocation alloc] initWithLatitude:geoPoint.latitude longitude:geoPoint.longitude]; CLGeocoder *geocoder; geocoder = [[CLGeocoder alloc]init]; [geocoder reverseGeocodeLocation:userLocation completionHandler:^(NSArray *placemarks,NSError *error) { CLPlacemark *rootPlacemark = placemarks[0]; MKPlacemark *evolvedplacemark = [[MKPlacemark alloc]initWithPlacemark:rootPlacemark]; ABRecordRef persona = ABPersonCreate(); ABRecordSetValue(persona,kABPersonFirstnameProperty,(__brIDge CFTypeRef)(evolvedplacemark.name),nil); ABMutableMultiValueRef multiHome = ABMultiValueCreateMutable(kABMultIDictionaryPropertyType); bool dIDAddHome = ABMultiValueAddValueAndLabel(multiHome,(__brIDge CFTypeRef)(evolvedplacemark.addressDictionary),kABHomeLabel,NulL); if(dIDAddHome) { ABRecordSetValue(persona,kABPersonAddressproperty,multiHome,NulL); NSLog(@"Address saved."); } NSArray *indivIDual = [[NSArray alloc]initWithObjects:(__brIDge ID)(persona),nil]; CFArrayRef arrayRef = (__brIDge CFArrayRef)indivIDual; NSData *vcards = (__brIDge NSData *)ABPersonCreateVCardRepresentationWithPeople(arrayRef); Nsstring* vcardString; vcardString = [[Nsstring alloc] initWithData:vcards enCoding:NSASCIIStringEnCoding]; NSLog(@"%@",vcardString); NSArray *paths = NSSearchPathForDirectorIEsInDomains(NSdocumentDirectory,NSUserDomainMask,YES); Nsstring *documentsDirectory = [paths objectAtIndex:0]; // Get documents directory Nsstring *filePath = [documentsDirectory stringByAppendingPathComponent:@"pin.loc.vcf"]; [vcardString writetofile:filePath atomically:YES enCoding:NSUTF8StringEnCoding error:&error]; NSURL *url = [NSURL fileURLWithPath:filePath]; NSLog(@"url> %@ ",[url absoluteString]); // Share Code // NSArray *itemsToShare = [[NSArray alloc] initWithObjects: url,nil] ; UIActivityVIEwController *activityVC = [[UIActivityVIEwController alloc] initWithActivityItems:itemsToShare applicationActivitIEs:nil]; activityVC.excludedActivityTypes = @[UIActivityTypePrint,UIActivityTypecopytopasteboard,UIActivityTypeAssignToContact,UIActivityTypeSavetoCameraRoll,UIActivityTypePostToWeibo]; if (UI_USER_INTERFACE_IdioM()==UIUserInterfaceIdiomPhone) { [self presentVIEwController:activityVC animated:YES completion:nil]; } else { popControl = [[UIPopoverController alloc] initWithContentVIEwController:activityVC]; } }];}总结
以上是内存溢出为你收集整理的ios – 如何将我当前的位置分享给UIActivityViewController?全部内容,希望文章能够帮你解决ios – 如何将我当前的位置分享给UIActivityViewController?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)