2017-02-15 6 views
1

Ich bin neu in iOS-Entwicklung. Ich habe eine Tableview-Menü erstellt, die etwa wie folgt aussieht:So öffnen Sie Anwendungen wie Telefonwähler beim Klicken auf Tabellenansicht Zelle ios Ziel c

enter image description here

Jetzt möchte ich die Wählhilfe, Messaging und E-Mail-App auf Zelle Hahn öffnen. Wie geht es?

Ich war so etwas (FUNKTIONIERT NICHT !!!):

-(void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ 
    if(self.tableView.indexPathForSelectedRow.row == 0){ 
     NSLog(@"Call selected!!"); 
     [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tell://1234"] options:@{} completionHandler:nil]; 
    } 
    else if (self.tableView.indexPathForSelectedRow.row == 1){ 
     NSLog(@"Text Selected!!"); 
    } 
    else{ 
     NSLog(@"Email Selected!!"); 
    } 
} 

Jede Hilfe geschätzt wird.

Hinweis: Ich stütze mich auf iOS 10.2, so dass Methoden wie openURL abgeschrieben werden.

Dank

+0

bekommen Was nicht funktioniert? ist 'tableView: didSelectRowAtIndexPath:' aufgerufen? Warum verwenden Sie 'self.tableView.indexPathForSelectedRow.row', wenn Sie den' indexPath' im Parameter haben? 'tell: //' vs 'tel: //'? Haben Sie versucht, zuerst 'canOpenURL:' zu nennen? – Larme

Antwort

1

Sie einen Anruf

[https://developer.apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/PhoneLinks/PhoneLinks.html][1]

ist nicht tell://1234

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tell://1234"] options:@{} completionHandler:nil]; 

es ist tel:1234

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel:1234"] options:@{} completionHandler:nil]; 
initiieren

oder

telprompt gibt dem Benutzer die Möglichkeit, den Anruf zu tätigen oder den Anruf abzubrechen, bevor das Telefon wählt. Die zwei Schrägstriche nach dem Doppelpunkt sind optional.

für z

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"telprompt://1234"] options:@{} completionHandler:nil]; 

vergessen Sie nicht LSApplicationQueriesSchemes in Ihrem .plist

<key>LSApplicationQueriesSchemes</key> 
<array> 
<string>tel</string> 
<string>telprompt</string> 
</array> 

für weitere Informationen hinzuzufügen, können Sie den Link für tutorial

+0

Sie können das '//' entfernen, nur 'tel: 1234' funktioniert. Dies ist ein gutes Dokument in Apples [Phone Link] (https://developer.apple.com/library/content/featuredarticles/iPhoneURLScheme_Reference/PhoneLinks/PhoneLinks.html) Dokumentation. – rckoenes

Verwandte Themen