我想显示一个弹出窗口,询问用户是否想在用户点击某个号码时拨打该号码。
我该怎么做?目前,当我点击该号码时,它会自动调用它。
答案 0 :(得分:10)
你也可以这样做:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"telprompt:0123456789"]];
获取提示并在之后返回您的应用。
答案 1 :(得分:3)
创建UIAlertView,并将委托设置为self,如果selectedButtonIndex是警报中yes按钮的buttonIndex,请拨打该号码,如果没有,请不要拨打该号码。
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Title" message:@"Do you want to call..." delegate:self cancelButtonTitle:@"No" otherButtonTitles:@"Yes", nil];
[alert setTag:02];
[alert show];
[alert release];
- (void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
if (alertView.tag == 02 && buttonIndex != alertView.cancelButtonIndex) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://phonenumber"]];
}
}
答案 2 :(得分:3)
我认为你所寻找的东西就像UIWebView自动对电话号码所做的那样。它会弹出一个UIAlertView来询问用户是否想在拨出之前拨打该号码。为此,请将您的类设为UIAlertViewDelegate并执行以下操作:
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle: nil
message: phonenum
delegate: self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Call",nil];
[alert show];
[alert release];
此外,将以下方法添加到同一个类:
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
if (buttonIndex == 0) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat: @"tel://%@", phoneNum]]];
}
}
当用户与其进行交互时,警报视图将回调此方法。 buttonIndex == 0确保您只在用户点击“呼叫”按钮时拨打该号码。
答案 3 :(得分:0)
您应该使用UIAlertView方法。 该文档在this link 中提供。我建议您查看该文档,一切都是自我解释的。
但你可能需要这样的东西。
UIAlertView *alert = [[[UIAlertView alloc] initWithTitle:@"Really call?" message:@"Do you want to call this number?" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:nil] autorelease];
// optional - add more buttons:
[alert addButtonWithTitle:@"Yes"];
[alert show];