2013-09-29 68 views
1

我該如何處理這段代碼才能從plist中提取電話號碼?來自plist的電話iOS

-(IBAction)callPhone:(id)sender { 
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel:2135554321"]]; 
} 

回答

0

假設你已經包含了一個名爲foo.plist到您的項目文件,名爲telnum一個字符串屬性,下面應該與工作

NSString *filepath = [[NSBundle mainBundle] pathForResource:@"foo" ofType:@"plist"]; 
NSDictionary *plistHash = [NSDictionary dictionaryWithContentsOfFile:filepath]; 
NSString *tel = [plistHash objectForKey:@"telnum"]; 

事後你可以調用openURLtel值。

+0

你可以更精細..我有點新的Xcode和無法弄清楚如何從callphone – user2792928

2

您應該添加您的plist到您的項目(如果它正是你束)(例如,如果它是一個字典):

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"clubs" ofType:@"plist"]; 
    telsDictionary = [NSDictionary dictionaryWithContentsOfFile:filePath]; 

例如,你的plist是再次NSDictionary

{ 「邁克」, 「2135554321」, 「Deniel」, 「2135554322」, 「桑德拉」, 「2135554323」}

如果你想打電話Deniel:

-(IBAction)callPhone:(id)sender { 

    NSString* yourActualNumber = [NSString stringWithFormat:@"tel:%@",telsDictionary[@"Deniel"]]; 
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:yourActualNumber]]; 
} 
+0

它工作正常,除了每次我做它調用685-5通話時間內撥打電話的行動。有什麼想法嗎? – user2792928

+0

當然...因爲你沒有改變方法,決定哪個號碼將被呼叫 – incmiko